多态(Polymorphism)
谈一谈多态
1.字面意思就是多个状态,在面向对象语言中,接口的多种不同的实现方式即为多态.
2.多态就是表现为同一个接口,使用不同的实例,而表选为的不同的状态,同一个事件发生在不同对象上产生的不同的结果
多态的必要条件
1.有对父类的继承
2.有子类对父类重写
3.父类的引用指向子类的对象
下面展示一段多态的实例
这里的是一个宠物类里面定义了宠物们共有的姓名和“吃东西”的方法
而这里的分别写的是子类企鹅和狗狗传入了属性性别的和重了吃的动作
最后测试类给宠物类的数组对象传入参数并打印
输出结果是:
狗狗小黑吃骨头
狗狗旺旺吃骨头
企鹅Q仔吃鱼
多态的好处
1.防止代码冗余
2.使代码更加简单易懂
3.可以简单的修改和更加灵活的扩充