在Java中,通过使用继承(extends关键字)和super关键字,可以很容易地实现代码复用。继承允许一个类从另一个类继承属性和方法,从而实现代码的复用。super关键字用于引用父类的构造方法、属性和方法。
以下是一个简单的例子,展示了如何使用super关键字实现代码复用:
public class Animal {
protected String name;
public Animal(String name) {
this.name = name;
}
public void eat() {
System.out.println(name + " is eating.");
}
public void sleep() {
System.out.println(name + " is sleeping.");
}
}
在这个例子中,我们创建了一个名为Animal的父类,它有两个属性(name)和方法(eat()和sleep())。
public class Dog extends Animal {
private String breed;
public Dog(String name, String breed) {
super(name); // 调用父类的构造方法
this.breed = breed;
}
public void bark() {
System.out.println(name + " is barking.");
}
// 覆盖父类的方法
@Override
public void eat() {
super.eat(); // 调用父类的eat()方法
System.out.println(name + " is eating dog food.");
}
}
在这个例子中,我们创建了一个名为Dog的子类,它继承了Animal类。我们使用super关键字调用了父类的构造方法,并覆盖了父类的eat()方法。
public class Main {
public static void main(String[] args) {
Dog dog = new Dog("Buddy", "Golden Retriever");
dog.eat(); // 调用覆盖后的eat()方法
dog.sleep(); // 调用继承自父类的sleep()方法
dog.bark(); // 调用子类自己的bark()方法
}
}
在这个例子中,我们创建了一个Dog对象,并调用了它的eat()、sleep()和bark()方法。注意,当我们调用eat()方法时,实际上调用的是覆盖后的方法,该方法首先调用了父类的eat()方法,然后执行了自己的代码。
通过这种方式,我们可以利用super关键字实现代码复用,避免重复编写相同的代码。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。