我即将参加我的第一个面向对象编程课程的期末考试,但我仍然不了解多态性的概念.
假设我有一个抽象类"Vehicle",这个类有一个名为"Aircraft"的子类.我的问题是,这两个代码有什么不同?
Aircraft Jetplane = new Aircraft();
Run Code Online (Sandbox Code Playgroud)
和
Vehicle Jetplane = new Aircraft();
Run Code Online (Sandbox Code Playgroud)
Pup*_*ppy 14
在第二个,然后Jetplane可能是从车辆继承的任何其他东西,而不仅仅是飞机.例如,你可以有类似的东西
Vehicle veh = null;
if (someCondition)
veh = new Aircraft();
else
veh = new Boat();
Run Code Online (Sandbox Code Playgroud)
这不能在第一个样本中完成,因为船不是飞机.
| 归档时间: |
|
| 查看次数: |
2707 次 |
| 最近记录: |