日期:2014-05-20  浏览次数:20769 次

多态复习
class Animal { //建立动物类
private String name;
Animal(String name) {
this.name=name;
}

public void enjoy(){ //动物enjoy时会叫的 enjoy方法
System.out.println("叫声...");
}
}

class Cat extends Animal { //继承动物类的猫类
private String eyesColor;
  Cat(String n,String c) {
  super(n);
  eyesColor = c ;
  }
  public void enjoy() { //重写父类方法,以个性化
  System.out.println("猫叫...");
  }
}

class Dog extends Animal { //继承动物类的狗类
private String furColor;
Dog(String n,String c) {
super(n);
furColor = c;
}
public void enjoy() { //重写父类方法,以个性化
System.out.println("狗叫...");
}
}

class Lady { //养动物的LADY类
private String name;
private Animal pet;
Lady(String name,Animal pet) {
this.name = name; 
this.pet = pet;
}
public void myPetEnjoy() {
pet.enjoy(); //只有运行的时候,才知道调用的是哪个动物的 'enjoy()' 方法
}
}

public class Test {
public static void main(String args[]) {

Cat c = new Cat("mimi","blue");
Dog d = new Dog("didi","black");

Lady l1 = new Lady("mary",c);
Lady l2 = new Lady("linda",d);
l1.myPetEnjoy();
l2.myPetEnjoy();
}
}

------解决方案--------------------

------解决方案--------------------
不错!
------解决方案--------------------
复习下。
------解决方案--------------------
孙鑫的教程
------解决方案--------------------
复习下