Java 子类继承父类重新赋值

在Java中,子类可以通过继承父类来获得父类的属性和方法。但是有时候我们需要在子类中重新赋值父类的属性,以满足特定的需求。本文将介绍Java中子类继承父类后重新赋值父类属性的方法,并提供相应的代码示例。

什么是继承

继承是面向对象编程中的一个重要概念,它允许一个类继承另一个类的属性和方法。被继承的类称为父类(或超类、基类),继承父类的类称为子类(或派生类)。子类通过继承获得父类的所有非私有属性和方法,并可以在此基础上进行扩展或修改。

在Java中,使用关键字extends来实现继承关系。例如,我们有一个父类Person和一个子类Student,则可以通过以下方式实现子类对父类的继承:

class Person {
    // 父类属性和方法
}

class Student extends Person {
    // 子类属性和方法
}

子类重新赋值父类属性

当子类继承父类后,子类会继承父类的所有属性和方法。在某些情况下,我们可能希望在子类中重新赋值父类的属性,以适应子类的需求。为了实现这一目的,可以使用super关键字引用父类的属性。

以下是一个示例代码,展示了如何在子类中重新赋值父类的属性:

class Person {
    String name;

    public Person(String name) {
        this.name = name;
    }
    
    public void display() {
        System.out.println("Name: " + name);
    }
}

class Student extends Person {
    int grade;
    
    public Student(String name, int grade) {
        super(name); // 调用父类的构造方法
        this.grade = grade;
    }
    
    // 重新赋值父类的属性
    public void display() {
        super.display(); // 调用父类的display方法
        System.out.println("Grade: " + grade);
    }
}

public class Main {
    public static void main(String[] args) {
        Student student = new Student("John", 10);
        student.display();
    }
}

在上面的示例中,父类Person有一个属性name,子类Student继承了该属性并添加了一个新的属性grade。在子类的构造方法中,使用super(name)来调用父类的构造方法并为父类的属性赋值。在子类的display方法中,先调用父类的display方法,然后打印子类自己的属性grade

运行上述代码,将输出:

Name: John
Grade: 10

可以看到,通过在子类中重新赋值父类的属性,我们可以灵活地扩展父类的功能,满足子类的需求。

总结

本文介绍了Java中子类继承父类后重新赋值父类属性的方法。通过使用super关键字引用父类的属性,我们可以在子类中重新赋值父类的属性,并灵活地扩展父类的功能。在实际开发中,这种特性使得我们能够根据具体情况对继承关系进行个性化定制,提高代码的复用性和可维护性。

希望本文的内容能够帮助您理解Java中子类继承父类重新赋值属性的方法,并能够在实际开发中灵活运用。