设为首页 加入收藏

TOP

Java之多态(二)
2017-10-13 10:40:46 】 浏览:4869
Tags:Java

package test05;
import test06.Car1;
public class DuoTai_Test02 {

/**多个对象,一个形态
* Tiger、Lion、Snake → Animal
*、多个对象,一种形态(类型)。
* 不同对象,表现出同一种形态之后。
* 可以实现同样的功能。
*
* 此方式,需要多个子类对应一个父类。
* 往往是采用(多个)子类继承父类来实现。
*
* @param args
*/
public static void main(String[] args) {
  Animal animal=new Cat(); ///抽象引用指向子类对象
  animal.eat();
  animal.sleep();
  Animal animal2=new Dog();
  animal2.eat();
  animal2.sleep();
  Animal animal3=new Snack();
  animal3.eat();
  animal3.sleep();

  DuoTai_Test02 dt=new DuoTai_Test02();

  dt.test(new Cat());
  dt.test(new Dog());
  dt.test(new Snack());
}
public void test(Animal animals){
  animals.eat();
  animals.sleep();
}

}

abstract class Animal{/////抽象类
  String name;
  int age;
  public abstract void eat();///抽象方法
  public abstract void sleep();////抽象方法

}
class Cat extends Animal {
  public void eat(){ ////重写
    System.out.println("猫吃");

  }
  public void sleep(){ ////重写
    System.out.println("猫睡觉");
  }
}
class Dog extends Animal{
  public void eat(){ ////重写

  System.out.println("狗吃");

  }
  public void sleep(){ ////重写
  System.out.println("狗睡觉");

  }
}
class Snack extends Animal{
  public void eat(){ ////重写
  System.out.println("蛇吃");

  }
  public void sleep(){ ////重写
  System.out.println("蛇睡觉");

  }
}

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇PHP设计模式(五)建造者模式(Bu.. 下一篇java中的内部类

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目