Java 定义父类

Java 是一种面向对象的编程语言,其中的关键概念之一就是继承。继承是指一个类可以继承另一个类的属性和方法,并且可以添加自己的属性和方法。在 Java 中,我们使用关键字 extends 来定义一个类的父类。

什么是父类?

在 Java 中,父类是指被继承的类,也称为基类或超类。父类包含了一些通用的属性和方法,而子类则可以继承这些属性和方法,并在此基础上进行扩展或修改。

定义父类

下面是一个简单的代码示例,展示了如何定义一个父类:

public class Animal {
    private String name;
    
    public Animal(String name) {
        this.name = name;
    }
    
    public void eat() {
        System.out.println("The animal is eating.");
    }
    
    public void sleep() {
        System.out.println("The animal is sleeping.");
    }
}

在上面的例子中,我们定义了一个名为 Animal 的父类。这个父类有一个私有属性 name,以及两个公有方法 eatsleep。构造方法 public Animal(String name) 用于初始化 name 属性。

子类继承父类

子类是指继承父类属性和方法的类。在 Java 中,我们使用 extends 关键字来定义一个子类,并且可以使用 super 关键字来调用父类的方法。

下面是一个示例代码,展示了如何定义一个子类并继承父类的属性和方法:

public class Cat extends Animal {
    public Cat(String name) {
        super(name);
    }
    
    public void meow() {
        System.out.println("The cat is meowing.");
    }
}

在上面的例子中,我们定义了一个名为 Cat 的子类,它继承了 Animal 父类的属性和方法。子类还新增了一个方法 meow,用于输出猫叫声。

使用父类和子类

下面是一个使用父类和子类的示例代码:

public class Main {
    public static void main(String[] args) {
        Animal animal = new Animal("Animal");
        Cat cat = new Cat("Tom");
        
        animal.eat();
        animal.sleep();
        
        cat.eat();
        cat.sleep();
        cat.meow();
    }
}

运行上面的代码,将输出以下结果:

The animal is eating.
The animal is sleeping.
The animal is eating.
The animal is sleeping.
The cat is meowing.

在上面的示例中,我们创建了一个 Animal 对象和一个 Cat 对象,并调用它们的方法。由于 CatAnimal 的子类,所以 Cat 对象可以调用父类 Animal 中的方法,也可以调用子类 Cat 中新增的方法。

为什么使用父类?

使用父类和子类的主要好处是代码的复用和可扩展性。通过将通用的属性和方法放在父类中,可以避免在每个子类中重复编写相同的代码。这样可以提高代码的可维护性和可读性。

此外,使用父类还可以实现多态性。多态性是指一个对象可以以多种形式出现的特性。通过使用父类类型的引用指向子类对象,可以实现不同子类对象的统一处理。这为编写灵活和可扩展的代码提供了便利。

总结

在 Java 中,我们使用 extends 关键字来定义父类并实现继承。定义父类后,子类可以继承父类的属性和方法,并可以添加自己的属性和方法。使用父类和子类的好处包括代码复用、可扩展性和多态性。通过合理使用父类和子类,我们可以编写出更加灵活和可维护的代码。

参考资料: