A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 戎马生涯 中级黑马   /  2016-5-26 23:14  /  689 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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.        编译错误

5 个回复

正序浏览
漆黑明月光 发表于 2016-5-26 23:22
methodB 和 method这是两个不同的方法,父类不能使用子类的特有属性和方法

多谢解惑
回复 使用道具 举报
Kingchen 发表于 2016-5-26 23:33
会产生编译错误。
Base base = new Child();//这是父类引用指向子类对象,多态的知识,这句没错。
base.met ...

多谢了!
回复 使用道具 举报
Kingchen 发表于 2016-5-26 23:33
会产生编译错误。
Base base = new Child();//这是父类引用指向子类对象,多态的知识,这句没错。
base.met ...

多谢了!
回复 使用道具 举报
会产生编译错误。
Base base = new Child();//这是父类引用指向子类对象,多态的知识,这句没错。
base.methodB(); //编译时看父类,父类中没有method方法,所以这句有错。
回复 使用道具 举报
methodB 和 method这是两个不同的方法,父类不能使用子类的特有属性和方法
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马