java如何访问继承类

java如何访问继承类

作者:Joshua Lee发布时间:2026-02-05阅读时长:0 分钟阅读次数:1

用户关注问题

Q
Java中如何调用继承类的方法?

在Java中,如何访问或调用一个继承了父类的子类中的方法?

A

使用子类对象访问继承的方法

在Java中,如果一个类继承了另一个类,子类会自动拥有父类的所有非私有方法。要调用继承的方法,可以直接通过创建子类对象,然后使用该对象调用这些方法。例如:

class Parent {
    public void display() {
        System.out.println("Parent method");
    }
}

class Child extends Parent {
}

public class Test {
    public static void main(String[] args) {
        Child c = new Child();
        c.display(); // 调用继承自Parent的display方法
    }
}
Q
Java中如何访问继承类中的私有成员变量?

当子类继承父类时,能否直接访问父类中的私有成员变量?如果不能,有什么方法可以访问?

A

通过公有方法间接访问私有成员变量

在Java中,私有成员变量是不能被子类直接访问的,因为它们被限定在定义它们的类的作用域内。要访问这些私有变量,可以通过父类中提供的公有的getter和setter方法来间接访问。例如:

class Parent {
    private int number;
    
    public int getNumber() {
        return number;
    }
    
    public void setNumber(int number) {
        this.number = number;
    }
}

class Child extends Parent {}

public class Test {
    public static void main(String[] args) {
        Child c = new Child();
        c.setNumber(10); // 通过setter方法设置值
        System.out.println(c.getNumber()); // 通过getter方法获取值
    }
}
Q
Java中子类如何调用父类被重写的方法?

如果子类重写了父类的某个方法,但我希望在子类中调用父类的该方法,应该怎么操作?

A

使用 super 关键字调用父类方法

当子类重写了父类的方法后,如果想在子类的方法中调用父类被覆盖的方法,可以使用super关键字。例如:

class Parent {
    public void show() {
        System.out.println("Parent show");
    }
}

class Child extends Parent {
    @Override
    public void show() {
        super.show(); // 调用父类方法
        System.out.println("Child show");
    }
}

public class Test {
    public static void main(String[] args) {
        Child c = new Child();
        c.show();
    }
}