请问B b=new C();中的b是B的对象还是C的对象-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

请问B b=new C();中的b是B的对象还是C的对象

linchia1 2018-01-30 17:21:44 1898

B b=new C();中的b是B的对象还是C的对象
另外想问一下抽象方法在程序里是怎么作用的

abstract class B
{
void outB()
{

System.out.println("in B.");

}
abstract void method();
}
class C extends B
{
void method()
{ System.out.println("inC.");}
}
public class Exam
{
public static void main(String args[])
{

  B b=new C();
  b.method();
  b.outB();

}
}

云服务器登录 云服务器设置
分享到
取消 提交回答
全部回答(4)
  • yu_hc200
    2019-07-17 21:57:11

    你能这么写代码,就意味着c必须是b的子类,否则不能通过编译。所以回到问题,首先你是new出来的c,他一定是c。又因为c是b的子类,所以你说他的类型是b也不会错。

    0 0
  • 惜宇
    2019-07-17 21:57:11

    对象C的实例,可以参考下类的继承的概念 http://www.runoob.com/java/java-inheritance.html

    0 0
  • 落叶梧桐雨
    2019-07-17 21:57:11

    肯定是对象C的实例,没毛病

    0 0
  • nothingfinal
    2019-07-17 21:57:10

    对象C呀


    看看类的继承

    0 0
添加回答
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

最新问题