Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java中的实例创建_Java_Object - Fatal编程技术网

java中的实例创建

java中的实例创建,java,object,Java,Object,在对象创建中 自行车b=新本田() 为哪个类别创建对象…本田还是自行车 bike是父类,honda是子类。对象将为honda类创建(或)实例 =符号的左侧表示参考类型为自行车,右侧为实例。创建了本田类型的对象。变量的类型为Bike。变量的值是一个引用-该引用必须始终为null值,或者必须引用与Bike兼容类型的对象,才能成为b变量的值。这很好,因为本田车型与自行车车型的分配兼容 例如,如果您打印出b.getClass(),它仍然会显示Honda,因为这是指对象的执行时间类型。但是,如果有任何方法

在对象创建中

自行车b=新本田()

为哪个类别创建对象…本田还是自行车

bike是父类,honda是子类。

对象将为
honda
类创建(或)实例

=
符号的左侧表示参考类型为
自行车
,右侧为实例。

创建了
本田
类型的对象。变量的类型为
Bike
。变量的值是一个引用-该引用必须始终为
null
值,或者必须引用与
Bike
兼容类型的对象,才能成为
b
变量的值。这很好,因为
本田
车型与
自行车
车型的分配兼容

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

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

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

创建类型为
Honda
对象


短语“实例化一个类”的意思与“创建一个对象”的意思相同。当你创建一个
对象时,你正在创建一个类的“
实例”,因此“实例化”一个
对象的类型是
本田

b instanceof Honda == true

另一方面,变量类型为
Bike
本田
类的
对象
将被创建,但它将存储在
Bike
类型的变量中,确保
Bike
本田
派生类