java继承宠物用super关键字
时间: 2024-05-15 19:18:16 浏览: 102
super关键字-JAVA对象研究
正确的使用super关键字来继承宠物类的属性和方法的示例代码如下:
```java
public class Pet {
protected String name;
protected int age;
// 宠物类的构造方法
public Pet(String name, int age) {
this.name = name;
this.age = age;
}
// 宠物类的方法
public void eat() {
System.out.println(name + " is eating.");
}
}
public class Dog extends Pet {
private String breed;
// 狗类的构造方法
public Dog(String name, int age, String breed) {
super(name, age); // 调用父类的构造方法
this.breed = breed;
}
// 狗类重写了宠物类的eat方法
@Override
public void eat() {
System.out.println(name + " the " + breed + " is eating.");
}
// 狗类新增的方法
public void bark() {
System.out.println(name + " is barking.");
}
}
// 在另一个类中实例化Dog对象并访问其属性和方法
public class Main {
public static void main(String[] args) {
Dog myDog = new Dog("Buddy", 3, "Golden Retriever");
myDog.eat(); // 调用重写后的eat方法
myDog.bark(); // 调用新增的bark方法
System.out.println(myDog.name + " is " + myDog.age + " years old."); // 访问继承自父类的属性
}
}
```
上述示例代码中,Dog类继承了Pet类,并在自身的构造方法中通过`super`关键字调用了父类的构造方法来给父类的属性初始化。在重写了父类的`eat`方法后,Dog类新增加了一个`bark`方法。在使用Dog对象时,可以访问继承自父类的属性和方法,也能够调用自身新增的方法。
阅读全文