public class TestAnimal{
public static void main(String[] args){
Animal p = new Animal("animal name");
Cat c = new Cat("cat","blue");
Dog d = new Dog("dog","black");
Lady l = new Lady("xiaoqing",p);

p.enjoy();
c.enjoy();
d.enjoy();
  System.out.println(l);

Lady mi = new Lady("yangmei",c);
Lady mm = new Lady("yangmei",d);
Lady mn = new Lady("yangmei",p);

System.out.println(mi);
System.out.println(mm);
System.out.println(mn);
}
}class Animal{
String name;
Animal(String name){
this.name = name;
}
void enjoy(){
System.out.println("叫声 ");
}
}

class Cat extends Animal{
String col;
Cat(String name,String col){
super(name);
this.col = col;
}
void enjoy(){
System.out.println("猫叫声 ");
}
}

class Dog extends Animal{
String colo;
Dog(String name,String colo){
super(name);
this.colo = colo;
}

void enjoy(){
System.out.println("狗叫声 ");
}
}

class Lady{
String ladyName;
Animal pet;

Lady(String n,Animal pet){
ladyName = n;
this.pet = pet;
}

}在结果输出的时候,后面的l, mi ,mm, mn,都是输出Lady+哈希码?这是问什么?我是想练习多态的使用方法!

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【zyp627】截止到2008-07-24 21:20:46的历史汇总数据(不包括此帖):
    发帖的总数量:58                       发帖的总分数:800                      每贴平均分数:13                       
    回帖的总数量:29                       得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:58                       结贴的总分数:800                      
    无满意结贴数:1                        无满意结贴分:20                       
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:100.00%               结分的百分比:100.00%                  
    无满意结贴率:1.72  %               无满意结分率:2.50  %                  
    敬礼!