多态要满足三个条件:

1.要有继承
2.要有重写
3.父类引用指向子类对象

 
  
  1. class Animal { 
  2.   private String name; 
  3.   Animal(String name) {this.name = name;} 
  4.    
  5.   public void enjoy(){ 
  6.     System.out.println("叫声......"); 
  7.   } 
  8.  
  9.   //public void enjoy(); 
  10.  
  11. abstract class Cat extends Animal { 
  12.   private String eyesColor; 
  13.   Cat(String n,String c) {super(n); eyesColor = c;} 
  14.   /* 
  15.   public void enjoy() { 
  16.     System.out.println("猫叫声......"); 
  17.   } 
  18.   */ 
  19.   //public abstract void enjoy(); 
  20.  
  21. class Dog extends Animal { 
  22.   private String furColor; 
  23.   Dog(String n,String c) {super(n); furColor = c;} 
  24.   
  25.   public void enjoy() { 
  26.     System.out.println("狗叫声......"); 
  27.   } 
  28.  
  29. class Bird extends Animal { 
  30.      Bird() { 
  31.          super("bird"); 
  32.      } 
  33.      public void enjoy() { 
  34.     System.out.println("鸟叫声......"); 
  35.   } 
  36.  
  37. class Lady { 
  38.     private String name; 
  39.     private Animal pet; 
  40.     Lady(String name,Animal pet) { 
  41.         this.name = name; this.pet = pet; 
  42.     } 
  43.     public void myPetEnjoy(){pet.enjoy();}