关于java中多态知识的应用 应用继承和多态的思想,编写动物类,成员方法是动物叫声。写三个具体的类(猫、狗、羊),它们都是动物类的子类,并重写父类的成员方法。编写测试类,随机产生三种具体动物,调用叫声这个方法。
具体任务
-
定义一个父类Animal类
【学习应用继承和多态的思想小程序】方法:创建带参(kind为参数)构造方法
创建cry():void方法
-
编写三个具体的子类Cat类、Dog类、Sheep类
Cat类:小猫的叫声:喵喵喵~~~
Dog类:小狗的叫声:汪汪汪~~~
Sheep类:小羊的叫声:咩咩咩~~~
-
编写测试类,首先生成长度为5的父类对象数组,然后通过循环依次向数组中存入数据,现设定存储规则为:
b) 若数值为 0,则生成一个 Cat 类的对象,存入数组
c) 若数值为 1,则生成一个 Dog 类的对象,存入数组
d) 若数值为 2,则生成一个 Sheep 类的对象,存入数组
最后循环输出数组成员,并分别调用 cry() 方法。
代码实现 测试类代码
public class Test {public static void main(String[] args) {
Animal[] arr = new Animal[5];
for (int i = 0;
i < arr.length;
i++) {
int random = (int) (Math.random() * 3);
switch (random) {
case 0:
arr[i] = new Cat();
break;
case 1:
arr[i] = new Dog();
break;
case 2:
arr[i] = new Sheep();
break;
}}
for (Animal a : arr) {
a.cry();
}
}
}
package com.imooc.test5;
public class Animal {
private String kind;
public Animal() {
}
public Animal(String kind) {
this.kind = kind;
}
public void cry(){
}
/*=============================================*/public class Cat extends Animal {
public Cat() {
}@Override
public void cry(){
System.out.println("miao miao miao");
}}
/*=============================================*/
public class Dog extends Animal{
public Dog() {
}@Override
public void cry(){
System.out.println("wang wang wang");
}
}
/*=============================================*/
public class Sheep extends Animal{
public Sheep() {
}@Override
public void cry(){
System.out.println("mie mie mie ");
}
}
推荐阅读
- Java|Java基础——数组
- 人工智能|干货!人体姿态估计与运动预测
- java简介|Java是什么(Java能用来干什么?)
- Java|规范的打印日志
- Linux|109 个实用 shell 脚本
- 程序员|【高级Java架构师系统学习】毕业一年萌新的Java大厂面经,最新整理
- Spring注解驱动第十讲--@Autowired使用
- SqlServer|sql server的UPDLOCK、HOLDLOCK试验
- jvm|【JVM】JVM08(java内存模型解析[JMM])
- 技术|为参加2021年蓝桥杯Java软件开发大学B组细心整理常见基础知识、搜索和常用算法解析例题(持续更新...)