老师帮忙检查
来源:3-16 编程练习
星星和猫看月亮
2019-09-14 14:00:06
package com.imooc.animal;
public class Animal {
// 属性:kind(种类)
private String kind;
public Animal() {
}
// 创建带参(king为参数)构造函数
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() {
System.out.println(this.getKind()+"的叫声:");
}
}
package com.imooc.animal;
public class Cat extends Animal {
// 重写父类cry()方法,输出信息为“小猫的叫声:喵喵喵~~~”
public void cry() {
System.out.println( "小猫的叫声:喵喵喵~~~");
}
}
package com.imooc.animal;
public class Dog extends Animal {
//重写父类cry()方法:输出信息为“小狗的叫声:汪汪汪~~~”
public void cry() {
System.out.println( "小狗的叫声为:汪汪汪~~~");
}
}
package com.imooc.animal;
public class Sheep extends Animal {
//重写父类的方法cry(),要求输出信息“小羊的叫声:咩咩咩~~~”
public void cry() {
System.out.println("小羊的叫声:咩咩咩~~~");
}
}
package com.imooc.animal;
public class Test {
public static void main(String[] args) {
// 生成父类对象数组,数组长度为5
Animal arr[]=new Animal[5];
// 产生随机数,随机产生三种具体子类的实例
// 循环输出,循环体中每个对象分别调用cry()方法。
for(int i=0;i<=arr.length-1;i++) {
int n=(int)(Math.random()*3);
switch (n){
case 0:
arr[i]=new Cat();break;
case 1:
arr[i]=new Dog();break;
case 2:
arr[i]=new Sheep();break;
}
arr[i].cry();
}
}
}
1回答
同学你好,运行贴出代码,效果没有问题哦!代码的书写没有任何语法问题哦!
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题