继承和重写函数——Java中实现继承和重写的方法和技巧
发布时间:2023-06-13 09:59:36
在Java中,继承和重写是实现多态性和代码重用的两个非常重要的概念。继承是指子类继承父类的属性和方法,因此子类可以使用父类的属性和方法。而重写是指在子类中重新定义父类的方法,从而使得子类可以根据自己的需要来实现该方法。
实现继承
在Java中,使用关键字“extends”来实现继承,例如:
public class Animal {
private String name;
public Animal(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void makeSound() {
System.out.println("This animal makes a sound.");
}
}
public class Dog extends Animal {
public Dog(String name) {
super(name);
}
public void makeSound() {
System.out.println("The dog barks.");
}
}
在上述代码中,Animal类是一个基类,Dog类是其子类。Dog类继承了Animal类的属性和方法,包括构造函数和makeSound()方法。在Dog类中重写了makeSound()方法,使得它输出“The dog barks.”。
实现重写
在Java中实现函数重写需要遵循以下规则:
1.重写方法的名称、参数列表、返回类型必须与父类中被重写的方法的名称、参数列表、返回类型相同。
2.重写方法的访问修饰符不能比父类被重写的方法的访问修饰符更严格,例如父类方法的访问修饰符是protected,则子类重写该方法时只能使用protected或public修饰符。
例如,在上面的例子中,Dog类中重写了Animal类的makeSound()方法,代码如下:
public void makeSound() {
System.out.println("The dog barks.");
}
在这个方法中,我们重写了Animal类中的makeSound()方法,输出了不同的内容。这意味着当我们使用Dog类对象调用makeSound()方法时,将会输出“the dog barks.”的内容。
总结
在Java中,继承和重写是非常重要的概念,可以实现多态性和代码重用。在实现继承时,需要使用关键字“extends”;在实现重写时,需要注意重写方法的名称、参数列表、返回类型以及访问修饰符等。通过合理的使用继承和重写,可以让我们的代码更加简洁、高效,提高代码的可重用性。
