本文主要是介绍应⽤继承和多态的思想,编写动物类,成员⽅法是动物叫声。写三个具体的类(猫、 狗、⽺),它们都是动物类的⼦类,并重写⽗类的成员⽅法。编写测试类,随机产⽣三 种具体动物,调⽤叫声这个⽅法。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、任务分析
1. 定义⼀个⽗类Animal类
属性:kind(种类)
⽅法:创建带参(kind为参数)构造⽅法
创建cry():void⽅法
2. 编写三个具体的⼦类Cat类、Dog类、Sheep类
分别重写⽗类中的 cry() ⽅法,输出信息分别为
Cat类:⼩猫的叫声:喵喵喵~~~
Dog类:⼩狗的叫声:汪汪汪~~~
Sheep类:⼩⽺的叫声:咩咩咩~~~
3. 编写测试类,⾸先⽣成⻓度为5的⽗类对象数组,然后通过循环依次向数组中存⼊ 数据,现设定存储规则为:
a) 每次随机产⽣⼀个0~2的正整数
b) 若数值为 0,则⽣成⼀个 Cat 类的对象,存⼊数组
c) 若数值为 1,则⽣成⼀个 Dog 类的对象,存⼊数组
d) 若数值为 2,则⽣成⼀个 Sheep 类的对象,存⼊数组 最后循环输出数组成员,并分别调⽤ cry() ⽅法。
二、实现代码
1.Animal.java
public class Animal {
private String king;
public Animal() {
}
public Animal(String king) {
super();
this.king = king;
}
public String getKing() {
return king;
}
public void setKing(String king) {
this.king = king;
}
public void cry() {
}
}
2.Cat.java
public class Cat extends Animal{
public void cry() {
System.out.println("小猫的叫声:喵喵喵~~~");
}
}
3.Dog.java
public class Dog extends Animal{
public void cry() {
System.out.println("小狗的叫声:汪汪汪~~~~");
}
}
4.Sheep.java
public class Sheep extends Animal {
public void cry() {
System.out.println("小羊的叫声:咩咩咩");
}
}
5.Test3.java
public class Test3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Animal[] temp = new Animal[5];
// do-while只要符合while的条件do就会一直执行
// 循环方案1
for(int i=0;i<5;i++) {
int j;
do {
j = (int) (Math.random() * 3);
System.out.print(j);
} while (j>2&j<0);
if (j == 0) {
temp[i] = new Cat();
} else if (j == 1) {
temp[i] = new Dog();
} else if (j == 2) {
temp[i] = new Sheep();
}
}
// 循环方案2
// int i = 4;
// while (i >= 0) {
// int j = (int) (Math.random() * 3);
// if (j == 0) {
// temp[i] = new Cat();
// } else if (j == 1) {
// temp[i] = new Dog();
// } else if (j == 2) {
// temp[i] = new Sheep();
// }
// i--;
// System.out.println(j + " ");
//
// }
for (int a = 0; a < 5; a++) {
System.out.println(temp[a]);
temp[a].cry();
}
}
}
6.运行图片
这篇关于应⽤继承和多态的思想,编写动物类,成员⽅法是动物叫声。写三个具体的类(猫、 狗、⽺),它们都是动物类的⼦类,并重写⽗类的成员⽅法。编写测试类,随机产⽣三 种具体动物,调⽤叫声这个⽅法。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!