在java中创建实例

时间:2013-07-09 05:05:06

标签: java object

在对象创作中,

自行车b =新本田();

为哪个类创建对象...对于Honda还是For Bike?

自行车是父级,本田是儿童级。

5 个答案:

答案 0 :(得分:13)

创建了Honda类型的对象变量的类型为Bike。变量的值是一个引用 - 该引用必须始终为null值,或者它必须引用类型兼容的对象与Bike的顺序是b变量的值。没关系,因为Honda类型与Bike类型分配兼容。

例如,如果打印出b.getClass(),那么仍会显示Honda,因为它指的是对象的执行时类型。但是,如果有任何方法仅由Honda(而不是Bike)声明,那么您将无法直接在b上调用它们:

// This would be invalid, assuming that getHondaGarage is declared in Honda
String garage = b.getHondaGarage();

即使对象本身(在执行时)支持该方法,变量属于Bike类型意味着您只能访问由Bike及其超类声明的成员

答案 1 :(得分:4)

Object(或)将为Honda类创建实例。

=符号的左侧表示引用的类型为Bike,右侧为实例。

答案 2 :(得分:2)

创建Object类型Honda

更多关于“实例化类”的更多内容与“创建对象相同。”当您创建object时,您正在创建一个类的“instance”,因此“实例化”class

答案 3 :(得分:1)

对象的类型为Honda

b instanceof Honda == true

另一方面,变量的类型为Bike

答案 4 :(得分:1)

将创建Object类{p} Honda,但它将存储在Bike类型的变量中,请确保BikeHonda ...

派生类