[问题]参考变量的问题

楼主: 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