多态
面向对象的三大特征
1.封装 根据职责将属性和方法封装到一个抽象的类中
2.继承 实现代码的重用,相同的代码不需要重复的编写
- 设计类的技巧
- 子类针对自己特有的需求,编写特定的代码3.
3.多态 不同的子类对象调用相同的父类方法,产生不同的执行结果
- 多态可以增加代码的灵活度
- 以继承和重写父类方法为前提
- 是调用方法的技巧,不会影响到类的内部设计
多态案例演练
需求:
- 在Dog类中封装方法
game:普通狗只是在简单的玩耍
- 定义XiaoTianDog继承自Dog,并重写方法
game:哮天犬需要在天上玩耍
- 定义Person类,并且封装一个和狗玩的方法
在方法内部,直接让狗对象调用game方法
案例小结
-
Person类中只需要让狗对象调用game方法,而不关心具体是什么狗
game方法是在Dog父类中定义的
-
在程序执行时,传入不同的狗对象实参,会产生不同的执行效果