在面向对象编程中,基类(也被称为父类或超类)是一种特殊的类,它为其他类(称为子类或派生类)提供了一个公共的模板或蓝图。子类继承了基类的属性和方法,这意味着子类可以使用基类中定义的字段(变量)和方法。以下是基类的一些主要特性:
- 属性和方法的继承:子类继承了基类的所有公有和保护属性和方法。这意味着子类可以直接访问和使用这些属性和方法,无需重新定义它们。
- 重写方法:子类可以重写(override)基类中的方法,以提供不同的实现。这是多态性的一个关键特性。
- 扩展功能:子类可以在继承基类的属性和方法的基础上,添加新的属性和方法,以扩展基类的功能。
- 构造方法:子类不能继承基类的构造方法,但可以通过
super
关键字调用基类的构造方法。
以下是一个基类和子类的示例:
// 基类
class Animal {
void eat() {
System.out.println("The animal eats");
}
}
// 子类
class Dog extends Animal {
void bark() {
System.out.println("The dog barks");
}
}
public class BaseClassExample {
public static void main(String[] args) {
Dog dog = new Dog();
dog.eat(); // 输出"The animal eats"
dog.bark(); // 输出"The dog barks"
}
}
在这个示例中,Animal
是一个基类,它有一个方法eat
。Dog
是一个子类,它继承了Animal
类,并添加了一个新的方法bark
。在main
方法中,我们创建了一个Dog
对象,并调用了它的eat
和bark
方法。因为Dog
继承了Animal
,所以它可以直接使用eat
方法,无需重新定义这个方法。