在 java 中向下转换和创建子对象有什么区别?

  • 本文关键字:对象 区别 创建 java 转换 java
  • 更新时间 :
  • 英文 :


我写这个:

parent obj1=new Child();
Child obj2 =(Child)obj1; //downcasting

像这样:

Child obj2 = new Child(); //creating child object

不同之处在于,在一种情况下,对一个对象有两个引用。在另一个例子中,有两个引用指向两个不同的对象。考虑它如何与以下内容一起工作:

parent.kill();
if (child.isDead()) {
System.out.println("He's dead");
} else {
System.out.println("He lives!");
}

如果引用指向同一个对象,则输出"He's dead"。如果它们指向两个不同的对象,那么我们将输出&;He lives!&;

最新更新