多态的作用多态是同一个行为具有多个不同表现形式或形态的能力。
多态实现的必要条件多态在开发中联合方法覆盖一起使用,可以降低程序的耦合度,提高程序的扩展力。在开发中尽可能面向抽象编程,不要面向具体编程,好比电脑主板和内存条的关系一样,主板和内存条件之间有一个抽象的符合某个规范的插槽,不同品牌的内存条都可以插到主板上使用,2个G的内存条和4个G的内存条都可以插上,但最终的表现结果是不同的,2个G的内存条处理速度慢一些,4个G的快一些,这就是多态,所谓多态就是同一个行为作用到不同的对象上,最终的表现结果是不同的,主要的要求就是对象是可以进行灵活切换的,灵活切换的前提就是解耦合,解耦合依赖多态机制。
子类必须继承父类必须有重写父类引用指向子类对象。向上转型父类
public class Animal {public void eat() {System.out.println("所有的动物都很能吃。。。。。");}public void run() {System.out.println("所有的动物都很能吃。。。。。");}}
子类
public class Cat extends Animal{public void eat() {System.out.println("所有的猫都能吃。。。。。");}public void jump() {// TODO Auto-generated method stubSystem.out.println("所有的猫都能跳。。。。");}}class Dog extends Animal{ @Override public void eat() { System.out.println("狗吃骨头"); } public void jump(){ System.out.println("狗一跳一跳"); }}
测试类
public class Test {public static void main(String[] args) { Animal animal = new Cat() | new Dog();//多态 animal.eat(); Cat cat = (Cat) animal; cat.jump();}}