设计一个父类,设计一个子类,子类中通过super初始化父类。定义一个测试类对类进行测试。
时间: 2024-10-15 17:26:45 浏览: 19
在Java中,我们可以创建一个简单的例子来展示如何设计一个父类和子类,并利用`super`关键字进行初始化。首先,我们定义一个名为`Animal`的父类:
```java
public class Animal {
private String name;
// 构造函数,用于初始化父类属性
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println(name + " is eating.");
}
}
```
然后,我们创建一个名为`Dog`的子类,它继承自`Animal`并覆盖了构造函数来使用`super`初始化父类:
```java
public class Dog extends Animal {
public Dog(String name) {
super(name); // 使用super调用父类的构造函数
this.name = "Buddy";
}
@Override
public void eat() {
System.out.println(name + " is eating bones.");
}
}
```
接下来,我们编写一个测试类`MainClass`来进行实例化和测试:
```java
public class MainClass {
public static void main(String[] args) {
Dog dog = new Dog("Fido");
// 调用子类特有的eat方法
dog.eat(); // 输出: Buddy is eating bones.
// 尽管Dog是Animal的子类,但我们依然可以安全地调用父类的eat方法
((Animal) dog).eat(); // 输出: Fido is eating.
}
}
```
在这个例子中,`Dog`子类通过`super`关键字继承并初始化了父类`Animal`的属性,同时展示了多态性,即子类可以根据需要覆盖或增强父类的行为。
阅读全文