复制代码
- class Fu
- {
- void speak(){}
- void show(int x){}
- void eat(){}
- private void sleep(){}
- }
- class Zi extends Fu
- {
- void speak(){}
- void show(int x,int y){}
- int eat(){}
- private void sleep(){}
- }
speak()此函数在 Zi 类中重写(覆盖)了show()此函数在 Zi 类中重载了eat()此函数在 Zi 类和 Fu 类中的形式不允许出现在同一个类中,所以我这样的继承写法是不允许出现的sleep()此函数在 Zi 类中未发生任何改变,Fu 类sleep()函数是私有的,Zi 类无法访问此函数,也就无法继承--------------------------------------------------重载:函数名一定相同(重载前提),与返回值类型无关参数列表一定不同:参数个数不同,或者参数类型不同就重载参数个数相同,类型顺序不同就重载一下这个类中的两个函数就重载复制代码
- class
- {
- void show(int x,double y,char z)
- void show(int x,char y,double z)
- }
---------------------------------------------------重写:子父类中的两个函数返回值类型,函数名 ,参数个数,参数类型,类型顺序都要保持一致这是我的理解,希望大家指出我的理解的错误指出还有什么漏掉和注意的地方……
麦子 发表于 2013-10-26 16:52
理解的还行
重载就只看参数列表,重写就是函数的主题不同,函数的声明还是相同的
中山狼 发表于 2013-10-26 17:33
楼主在上面关于show()方法的说明有问题,
首先重载是指在同一个类中存在的同名但参数不同的情况,zi类中s ...
李新辉 发表于 2013-10-26 18:22
Zi 类继承父类
那么原 Zi 类相当于下面的形式(红色为从 Fu 类继承来的)
class Zi
回天之力 发表于 2013-10-30 00:08
重写:子类中的函数不能比父类中的函数权限小。
回天之力 发表于 2013-10-30 00:08
重写:子类中的函数不能比父类中的函数权限小。
李新辉 发表于 2013-10-30 10:18
private void sleep(){}
private void sleep(){}
回天之力 发表于 2013-10-30 00:08
重写:子类中的函数不能比父类中的函数权限小。
李新辉 发表于 2013-10-30 10:18
private void sleep(){}
private void sleep(){}
李新辉 发表于 2013-10-30 10:18
private void sleep(){}
private void sleep(){}
零下五度的水 发表于 2013-10-31 21:58
1.重写(Override)就是把父类的那个要重写的方法复制粘贴过来,除了方法体里面的内容什么都别改
其实你用 ...
李新辉 发表于 2013-10-31 22:08
private void sleep(){}
private void sleep(){}
睡不够的猪 发表于 2013-10-31 22:52
这样是可以定义的 不会发生冲突 因为当方法加了私有之后 ,在类之外是不能直接访问的 只能通过本类中的方 ...
零下五度的水 发表于 2013-10-31 23:10
才看到 private 修饰
父类的 sleep 方法跟子类一毛钱关系都没有,子类又看不见又不能用
你的问题基本等同于 ...
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |