189 8069 5689

java函数重写代码 java构造函数可以重写吗

java中的方法重写举例?

方法重写就是子类的方法覆盖了父类的方法,即子类的方法名和父类的方法名相同

在南岗等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站建设、做网站 网站设计制作按需制作网站,公司网站建设,企业网站建设,品牌网站设计,成都营销网站建设,外贸网站建设,南岗网站建设费用合理。

class People

{

protected double weight,height;

public void speakHello()

{

System.out.println("yayawawa");

}

public void averageHeight()

{

height=173;

System.out.println("average height:"+height);

}

public void averageWeight()

{

weight=70;

System.out.println("average weight:"+weight);

}

}

class ChinaPeople extends People

{

//代码1//重写public void speakHello()方法

// 要求输出类似“你好,吃饭了吗”这样的汉语信息

public void speakHello()

{

System.out.println("你好,吃饭了吗");

}

//代码2//重写public void averageHeight()方法

//要求输出类似“中国人的平均身高:173.0厘米”这样的汉语信息

public void averageHeight()

{

System.out.println("中国人的平均身高:173.0厘米");

}

//代码3//重写public void averageWeight()方法

//要求输出类似“中国人的平均体重:67.34公斤”这样的汉语信息

public void averageWeight()

{

System.out.println("中国人的平均体重:67.34公斤");

}

//System.out.println(this.speakHello()+this.averageHeight()+this.averageWeight());

public void chinaGongfu()

{

System.out.println("坐如钟,站如松,睡如弓");

}

}

class AmericanPeople extends People

{

//代码5//重写public void speakHello()方法

//要求输出类似“How do you do”这样的英语信息

public void speakHello()

{

System.out.println("How do you do");

}

//代码6//重写public void averageHeight()方法

public void averageHeight()

{

System.out.println("How do you do");

}

//代码7//重写public void averageWeight()方法

public void averageWeight()

{

System.out.println("How do you do");

}

public void americanBoxing()

{

System.out.println("直拳,勾拳");

}

}

class BeijingPeople extends ChinaPeople

{

//代码9//重写public void speakHello()方法

//要求输出类似“您好”这样的汉语信息

public void speakHello()

{

System.out.println("您好!");

}

//代码10//重写public void averageHeight()方法

public void averageHeight()

{

System.out.println("您好!");

}

//代码11//重写public void averageWeight()方法

public void averageWeight()

{

System.out.println("您好!");

}

public void beijingOpera()

{

System.out.println("京剧术语");

}

}

public class Example

{

public static void main(String args[])

{

ChinaPeople chinaPeople=new ChinaPeople();

AmericanPeople americanPeople=new AmericanPeople();

BeijingPeople beijingPeople=new BeijingPeople();

chinaPeople.speakHello();

americanPeople.speakHello();

beijingPeople.speakHello();

chinaPeople.averageHeight();

americanPeople.averageHeight();

beijingPeople.averageHeight();

chinaPeople.averageWeight();

americanPeople.averageWeight();

beijingPeople.averageWeight();

beijingPeople.beijingOpera();

americanPeople.americanBoxing();

beijingPeople.beijingOpera();

beijingPeople.chinaGongfu();

}

}

java重写

重写:除了方法体里面的代码,其他的部分都要和父类中的一样(访问权限要比父类中定义的访问权限宽松,如父类中定义为public,那子类重写的方法也必须是public,不能是protected或者private)。

楼上说法不准确:重载方法区别在于参数个数和参数类型,不在于返回值。也就是,重载方法的返回值可以不一样,而重写方法的返回值必须一样。

给你总结区分一下:重写方法出现在子类中,只有在发生继承关系的前提下,在能出现重写方法,而且重写的是父类的方法。而重载方法出现在同一个类中,和继承没有关系,重载的是类自己的方法。

java编程重写方法的问题

首先是从Object父类继承来的equals方法,然后你28行又写了一个参数类型是CircleTest1的equals方法,这属于方法的重载,也就是说此时CircleTest1类里有两个重载的equals方法,而你18行传入的是Object类型,所以调用的是从父类Object继承而来的的equals方法,所以首先编译没问题,其次Object类里的equals方法写的是this == obj,而你18行比较的是两个不同对象,所以是false,21行调用的是子类重写的父类equals方法,执行的是子类重写的方法体,比较的是radius变量值,默认都是0,所以相等

关于java中重写问题

代码一不是重写

重写规则是

参数列表必须与被重写方法的相同

返回类型必须与被重写方法的返回类型相同

代码一中 public void method()和 public float method(String s)参数列表不同,所以不是重写

代码 二中public float getNum() 和 public void getNum() 返回类型不同,所以报错


分享文章:java函数重写代码 java构造函数可以重写吗
链接URL:http://cdxtjz.com/article/hpiphh.html

其他资讯