[問題]參考變數的問題

作者: wwe90425 (撒尿牛丸)   2017-12-26 20:54:31
假設:
class A{
}
class B:A{
public B{}
public MethodB_1{}
}
假設有兩個類別A&B
B繼承自A
請問:
A _a = new B()
這樣宣告有什麼用途嗎?
今天有做過實驗
宣告完後
_a也無法用子類別的方法(但還是會執行B的建構子)
那幹嘛不直接宣告 A _a = new A
作者: testPtt (測試)   2017-12-26 21:17:00
通常A用virtual Method給B override 會這樣寫
作者: ssccg (23)   2017-12-26 21:28:00
polymorphism
作者: brian780405 (pohan)   2017-12-27 15:48:00
1. _a可以用子類別的方法,強制轉型後就可以2. 動物有吃這個方法,但吃的方式和內容都不一樣一樣的是,肚子餓就會吃東西動物 cow = new 牛(); if (cow.肚子餓) { 吃(); }動物 wolf = new 狼(); if (wolf.肚子餓) { 吃(); }
作者: name2name2 (yang~hi)   2017-12-28 23:05:00
找本 深入淺出設計模式 讀一下

Links booklink

Contact Us: admin [ a t ] ucptt.com