黑马程序员技术交流社区

标题: Java基础题求大神解惑 [打印本页]

作者: 戎马生涯    时间: 2016-5-26 23:14
标题: Java基础题求大神解惑
class Base {
        public void method(){
                System.out.print ("Base method");
        }
}
class Child extends Base{       
        public void methodB(){
                System.out.print ("Child methodB");
        }
}
class Sample {
        public static void main(String[] args) {
                Base base = new Child();
                base.methodB();
        }
}
        A.        Base method
        B.        Child methodB
        C.        Base method Child MethodB
        D.        编译错误
作者: 漆黑明月光    时间: 2016-5-26 23:22
methodB 和 method这是两个不同的方法,父类不能使用子类的特有属性和方法
作者: Kingchen    时间: 2016-5-26 23:33
会产生编译错误。
Base base = new Child();//这是父类引用指向子类对象,多态的知识,这句没错。
base.methodB(); //编译时看父类,父类中没有method方法,所以这句有错。
作者: 戎马生涯    时间: 2016-5-26 23:53
Kingchen 发表于 2016-5-26 23:33
会产生编译错误。
Base base = new Child();//这是父类引用指向子类对象,多态的知识,这句没错。
base.met ...

多谢了!
作者: 戎马生涯    时间: 2016-5-26 23:54
Kingchen 发表于 2016-5-26 23:33
会产生编译错误。
Base base = new Child();//这是父类引用指向子类对象,多态的知识,这句没错。
base.met ...

多谢了!
作者: 戎马生涯    时间: 2016-5-26 23:56
漆黑明月光 发表于 2016-5-26 23:22
methodB 和 method这是两个不同的方法,父类不能使用子类的特有属性和方法

多谢解惑




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