电子宠物系统 有两种宠物: Dog Penguin 宠物有名字,品种,年龄属性 写出 Dog 类,定义一个 print 方法: 输出 Dog 的全部信息。写出该类的无参构造方法编写 Test类,测试 Dog,用 Dog 类 创建 dog 对象,将属性输入,调用 print 方法,输出 dog 信息
时间: 2024-03-01 17:50:09 浏览: 56
很抱歉,我刚才的回答有误,可能是因为我没有仔细看清楚你的要求。下面是根据你的要求重新编写的代码:
```java
// 宠物类
public abstract class Pet {
private String name;
private String breed;
private int age;
public Pet(String name, String breed, int age) {
this.name = name;
this.breed = breed;
this.age = age;
}
public abstract void print();
// getter 和 setter 方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getBreed() {
return breed;
}
public void setBreed(String breed) {
this.breed = breed;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
// Dog 类的定义
public class Dog extends Pet {
public Dog(String name, String breed, int age) {
super(name, breed, age);
}
public void print() {
System.out.println("Dog: " + getName() + ", breed: " + getBreed() + ", age: " + getAge());
}
}
// 测试类
public class Test {
public static void main(String[] args) {
Pet dog = new Dog("Tom", "Golden Retriever", 3);
dog.print();
}
}
```
在上面的代码中,我们定义了一个抽象类 `Pet`,用于作为 `Dog` 和 `Penguin` 类的父类。`Pet` 类中包含了宠物的基本属性:`name`、`breed` 和 `age`,以及一个抽象方法 `print`,用于输出宠物的所有信息。`Dog` 类继承自 `Pet` 类,并实现了 `print` 方法。最后,我们在 `Test` 类中创建了一个 `Dog` 对象,并调用 `print` 方法输出宠物的信息。
需要注意的是,根据题目要求,宠物类中的属性应该使用 `private` 修饰,并提供相应的 getter 和 setter 方法。同时,我们使用了抽象类和抽象方法,以便在子类中实现不同的行为。
阅读全文