java中的多态部分

A 是抽象父类或接口, B , C 派生自 A ,或实现 A ,现在 Java 源代码中有如下声明:

1. A  a0=new  A();
2. A  a1 =new  B();
3. A  a2=new  C(); 

问以下哪个说法是正确的?( )

第1行不能通过编译
第1、2行能通过编译,但第3行编译出错
第1、2、3行能通过编译,但第2、3行运行时出错
第1行、第2行和第3行的声明都是正确的

正确答案: A

抽象类和接口不能实例化,但抽象类有构造方法,而接口没有!
接口没有构造方法所以不能被实例化。抽象类有构造方法,但是不是用来实例化的,是用来初始化的。可以通过多态让父类引用指向子类对象。
抽象类、接口不能直接进行实例化,需要通过子类的向上转型进行实例化
抽象类可以继承抽象类,接口也可以继承接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值