有點不明白
Dog dog=new Dog();
Animal animal=dog;
Dog dog2=(Dog)animal;
請問第二行每一個代表什么?怎么理解?為什么第二行不是Animal animal=Dog;第三行為什么不是Dog dog2=(Dog)Animal?第三行的animal是哪里來的??
Dog dog=new Dog();
Animal animal=dog;
Dog dog2=(Dog)animal;
請問第二行每一個代表什么?怎么理解?為什么第二行不是Animal animal=Dog;第三行為什么不是Dog dog2=(Dog)Animal?第三行的animal是哪里來的??
2016-11-26
舉報
2016-11-26
這三行代碼可以類比c語言:
第二行:
? ? Animal 表示類;animal 表示對象;dog 就是第一行生成的對象
? ? Animal animal = Dog 類比c語言就成了 double animal=float,變量賦值只能是值,不能賦值成變量類型吧
第三行:
? ? (Dog)animal 表示強制轉(zhuǎn)換,轉(zhuǎn)換肯定是針對對象的,而不是類;animal就是第二行生成的對象
? ??Dog dog2=(Dog)Animal 類比c語言就成了 float dog2=(float) double,強制轉(zhuǎn)換只針對變量
以上解答為自一個非計算機專業(yè)新人的粗淺理解,如有錯誤,請大神輕拍
2017-06-12
膩害,幕友
2017-01-01
如夢初醒!
兵教兵也這么厲害,都快趕上老師了!