JAVA第四次作业(1)继承多态
2017-10-20 19:53
477 查看
1.Radio动物声音模拟器
/* 抽象的类,封装两个行为*/
public abstract class Animal {
abstract void cry();
abstract void getAnimalName();
}
/*继承父类,重写方法*/
public class Dog extends Animal{
void getAnimalName(){
System.out.println("小狗的的名字是:雪纳瑞");
};
void cry(){
System.out.println("小狗的叫声:汪汪~");
};
}
public class Cat extends Animal {
void getAnimalName(){
System.out.println("小猫的的名字是:可爱的猫猫");
};
void cry(){
System.out.println("小猫的叫声:喵喵~");
};
}
public class Simulator {
public void playsound(Animal animal){
if(animal instanceof Dog)
{
Dog d=(Dog)animal;
d.getAnimalName();
d.cry();
}
else if(animal instanceof Cat )
{
Cat t=(Cat)animal;
t.getAnimalName();
t.cry();
}
}
}
/*主类:进行测试*/
public class Application {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Simulator simulator=new Simulator();
simulator.playsound(new Dog());
simulator.playsound(new Cat());
}
}
/* 抽象的类,封装两个行为*/
public abstract class Animal {
abstract void cry();
abstract void getAnimalName();
}
/*继承父类,重写方法*/
public class Dog extends Animal{
void getAnimalName(){
System.out.println("小狗的的名字是:雪纳瑞");
};
void cry(){
System.out.println("小狗的叫声:汪汪~");
};
}
public class Cat extends Animal {
void getAnimalName(){
System.out.println("小猫的的名字是:可爱的猫猫");
};
void cry(){
System.out.println("小猫的叫声:喵喵~");
};
}
public class Simulator {
public void playsound(Animal animal){
if(animal instanceof Dog)
{
Dog d=(Dog)animal;
d.getAnimalName();
d.cry();
}
else if(animal instanceof Cat )
{
Cat t=(Cat)animal;
t.getAnimalName();
t.cry();
}
}
}
/*主类:进行测试*/
public class Application {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Simulator simulator=new Simulator();
simulator.playsound(new Dog());
simulator.playsound(new Cat());
}
}
相关文章推荐
- Java第四次作业--面向对象高级特性(继承和多态)
- Java第十二次作业:继承与抽象类解决工人与学生的问题,抽象类实例。抽象类作用——为多态创造了可能。抽象类的作用总结
- [Java] 作业8(继承、多态)
- java之面向对象——继承、封装、多态
- 【Java】Java的继承和多态详解
- java 继承和多态
- java 重载、继承、多态
- 黑马程序员_java的继承性- 继承-final关键字-抽象类-接口-多态-异常-包-多线程-
- java三大特征封装、继承、多态
- Java中的继承和多态
- 继承多态绕点 Java篇
- 第四次JAVA作业
- Java程序员从笨鸟到菜鸟之(二)面向对象之封装,继承,多态(上)
- [Java]重载,重写以及继承,多态的区别
- Java笔记整理——接口、继承与多态
- Java 学习 第三章 Java核心-继承与多态
- 黑马程序员-java基础之继承,多态
- Java中继承、多态、重载和重写
- 2018/01/07JAVA 基础 / 接口与继承:多态的概念、接口的意义是什么呢?
- java之 ------ 类的封装、继承和多态(二)