问题关于对象的类型

cod*_*ive 2 java types object

我正在学习java并且对对象类型有疑问.

以下面的例子为例:

class A { }

class B extends A { }

class C {A myObject = new B();}
Run Code Online (Sandbox Code Playgroud)

描述myObject类型的可接受方式是什么?

你会说它是A型,B型还是A型和B型?

谢谢.

Kis*_*aki 6

myObject是类型的引用A(您的变量被声明为类型A).

被称为的对象本身myObject是类型的B.该实例是类型B.

这是一个背景和焦点问题.当你myObject在其他地方使用时,你可能不知道它是一个类的实例B,只是它是类型的A.