黑马程序员技术交流社区

标题: 子类 父类问题...不懂,求解释 [打印本页]

作者: 阿姆1Q84    时间: 2016-6-11 21:08
标题: 子类 父类问题...不懂,求解释
给定如下Java代码 , 以下(ab  )方法可以加入Child类中。  
public classParent{
intchange(){
    //此处省略N行代码
}
}   
Class Child extends Parent{
//(此处可以放入下面哪个选项)
}  
A.  publicint change(){}  
B.  intshow(int i){}  
C.  privateint change(){}  
D.  abstractint change(){}




为什么是A 和B.球解释


作者: 数码店    时间: 2016-6-11 21:36
我也不懂同问!求解释,
作者: tianzhu2725    时间: 2016-6-11 21:52
考的是 继承时子类的 修饰符 的权限必须大于父类 或一样  ,  题中父类的方法的权限修饰符没写,子类重写时要么写public  ,   要么和他一样不写,
作者: 黑猫的消失    时间: 2016-6-11 22:13
这道题主要考的是继承中的方法重写,当父类的方法是私有化时,子类是无法重写父类方法的,同理,子类方法是私有的,怎么能重写父类的方法呢。这样就排除了C,保留A。B选项和父类方法不同名,不会影响,所以也没错。D选项,abtract修饰方法,说明这个方法是抽象的,那子类也必须定义为抽象类,很明显题目中子类并不是抽象类。
作者: 阿姆1Q84    时间: 2016-6-12 12:05
黑猫的消失 发表于 2016-6-11 22:13
这道题主要考的是继承中的方法重写,当父类的方法是私有化时,子类是无法重写父类方法的,同理,子类方法是 ...

我看选型B,里面传了一个参数INT I,这是方法重写么?我看了定义好像不是啊..
重写:子父类出现了一模一样的方法
作者: 黑猫的消失    时间: 2016-6-12 21:02
阿姆1Q84 发表于 2016-6-12 12:05
我看选型B,里面传了一个参数INT I,这是方法重写么?我看了定义好像不是啊..
重写:子父类出现了一模一样的 ...

大兄弟,你是不是把继承和多态搞混了?继承的条件下,只要和父类中的方法不重名,子类任意定义成员方法都行,CD为什么错,是因为和父类方法重名,又乱JB加前缀。
作者: jannnonx    时间: 2016-6-12 23:54
C,子类继承父类,子类同名方法要跟父类一致;D,abstract 方法用在抽象类啊;B,子类可以自己定义一个新的方法;A,妥妥的继承父类方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2