📜  java中的继承setter和getter(1)

📅  最后修改于: 2023-12-03 15:16:34.192000             🧑  作者: Mango

Java中的继承setter和getter

在Java中,继承是一个非常强大的概念,通过它我们可以重用现有的代码,并且能够更好地组织代码结构。setter和getter方法是一个类的核心部分,它们允许对象之间的交互和数据访问。继承setter和getter方法能够在子类中保留父类中的属性,并添加额外的行为。在本文中,我们将探讨Java中继承setter和getter方法的概念。

Setter和Getter方法

在Java中,setter和getter方法用于访问一个类的私有属性。这些方法通常在一个类中声明,以允许其他类通过调用它们来访问私有属性。setter方法负责给私有属性赋值,而getter方法负责返回私有属性的值。

public class Person {
    private String name;
    private int age;

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getName() {
         return name;
    }

    public int getAge() {
        return age;
    }
}

以上是一个简单的Person类,它有两个私有属性name和age,将它们设为私有属性是为了保护它们不被其他类直接访问。为了与其他类进行交互,我们需要在Person类中提供setter和getter方法。在这个例子中,我们使用了this关键字来引用当前对象。例如,this.name是指当前对象的name属性。

继承

继承是Java编程中的另一个强大概念,它提供了一个重用现有代码的机制。在Java中,当一个类继承另一个类时,它会获得另一个类的所有方法和属性。这允许你在子类中使用父类已经定义的方法和属性,并添加额外的行为。

public class Employee extends Person {
    private double salary;

    public void setSalary(double salary) {
        this.salary = salary;
    }

    public double getSalary() {
        return salary;
    }
}

以上是一个简单的Employee类,它扩展了Person类,并添加了一个salary属性。它继承了Person类的name和age属性,并且可以使用Person类的setter和getter方法。

继承Setter方法

当使用继承时,子类可以继承父类的setter方法,这意味着在子类中可以使用父类的setter方法对属性进行初始化或修改。让我们来看一个示例:

Employee employee = new Employee();

employee.setName("Alice");
employee.setAge(30);
employee.setSalary(5000.0);

System.out.println(employee.getName()); // "Alice"
System.out.println(employee.getAge()); // 30
System.out.println(employee.getSalary()); // 5000.0

在这个例子中,我们使用了Employee类中继承来的setName和setAge方法来初始化name和age属性。这是因为Employee类继承了Person类的setter方法,因此它可以在子类中使用。然后我们使用Employee类中定义的setSalary方法设置salary属性并打印出来。

继承Getter方法

与setter方法一样,子类也可以继承父类的getter方法。这意味着在子类中可以使用父类的getter方法查询属性值。下面我们来看一个使用继承来获取Person中的name属性的例子。

Employee employee = new Employee();

employee.setName("Alice");
employee.setAge(30);

System.out.println(employee.getName()); // "Alice"

在这个例子中,我们使用了Employee类中继承来的getName方法来获取Person类中的name属性。正如我们在前面的例子中所看到的那样,setName和setAge方法已经在Employee类中被继承了。

总结

继承setter和getter方法很容易,只要在子类中调用父类的setter和getter方法就可以实现。通过继承setter和getter方法,我们可以在子类中访问父类的属性并添加额外的行为。这种做法能够减少重复代码,使代码更具有可重用性和可维护性。