老师请检查

来源:3-16 编程练习

piii

2020-07-02 17:44:07

public class Animal {
	
	// 属性:kind(种类)
	private String kind;

	public Animal() {

	}

	// 创建带参(kind为参数)构造函数
	public Animal(String kind) {
		this.setKind(kind);
	}

	// 应用封装实现对私有属性的get/set操作
	public String getKind() {
		return kind;
	}

	public void setKind(String kind) {
		this.kind = kind;
	}

	// 创建成员方法cry():void
	public void cry() {

	}
}
public class Cat extends Animal {

	// 重写父类cry()方法,输出信息为“小猫的叫声:喵喵喵~~~”
	@Override
	public void cry() {
		System.out.println("小猫的叫声:喵喵喵~~~");
	}
}
public class Dog extends Animal {

	// 重写父类cry()方法:输出信息为“小狗的叫声:汪汪汪~~~”
	@Override
	public void cry() {
		System.out.println("小狗的叫声:汪汪汪~~~");
	}
}
public class Sheep extends Animal {

	// 重写父类的方法cry(),要求输出信息“小羊的叫声:咩咩咩~~~”
	@Override
	public void cry() {
		System.out.println("小羊的叫声:咩咩咩~~~");
	}
}
public class Test {

	public static void main(String[] args) {

		// 生成父类对象数组,数组长度为5
		Animal[] a = new Animal[5];

		// 产生随机数,随机产生三种具体子类的实例
		for (int i = 0; i < a.length; i++) {
			int n = (int) (Math.random() * 3);
			switch (n) {
			case 0:
				a[i] = new Cat();
				break;
			case 1:
				a[i] = new Dog();
				break;
			case 2:
				a[i] = new Sheep();
				break;
			}
		}

		// 循环输出,循环体中每个对象分别调用cry()方法。
		for (int i = 0; i < a.length; i++) {
			a[i].cry();
		}
	}
}


写回答

1回答

好帮手慕小班

2020-07-02

同学你好,运行贴出代码,效果没有问题,很棒! 继续加油~

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

0

0 学习 · 11489 问题

查看课程