现在有一个电子宠物系统,父类peg,子类dog和penguin,要求子类继承父类,并重写父类方法,并打印宠物信息
时间: 2024-11-05 15:25:32 浏览: 55
ACCP6.0.NTppt
在电子宠物系统中,你可以创建一个名为"Pet"的抽象父类"peg",然后设计两个具体的子类"Dog"和"Penguin",这两个子类都继承自"Pet"。在这个场景里,我们可以这样做:
1. **定义Pet类**:
```java
public abstract class Pet {
private String name;
public Pet(String name) {
this.name = name;
}
// 定义通用的方法,需要子类重写
public abstract void showInfo();
// 共享的方法,如打印名字
public void printName() {
System.out.println("Pet's Name: " + name);
}
}
```
2. **创建子类并重写showInfo方法**:
```java
public class Dog extends Pet {
public Dog(String name) {
super(name);
}
@Override
public void showInfo() {
System.out.println("I'm a dog, my name is " + name);
}
}
public class Penguin extends Pet {
public Penguin(String name) {
super(name);
}
@Override
public void showInfo() {
System.out.println("I'm a penguin, my name is " + name);
}
}
```
现在,当你实例化Dog或Penguin对象并调用`showInfo()`方法时,会分别打印出各自子类特有的信息。
```java
public static void main(String[] args) {
Dog dog = new Dog("Buddy");
dog.showInfo(); // 输出: I'm a dog, my name is Buddy
Penguin penguin = new Penguin("Kiki");
penguin.showInfo(); // 输出: I'm a penguin, my name is Kiki
}
```
阅读全文