gpt4 book ai didi

java - 嵌套类中的类可访问性

转载 作者:行者123 更新时间:2023-12-01 17:53:33 26 4
gpt4 key购买 nike

如何访问位于私有(private)类 Model 中的方法getBMW(),而不创建类 Car类 Model 公开?

class MyCar {
public Car getCar() {
return new Car();
}

private class Car {
public Model getModel() {
return new Model();
}

private class Model {
public String getBMW() {
//...
}
//...
}
}
}

class TestCode {
public static void main(String arg[]) {
MyCar car = new MyCar();
car.getCar(). // <= no method getModel()
}
}

最佳答案

您甚至无法从公共(public)方法返回私有(private)Car,但您可以创建一个接口(interface):

public interface BmwModel {
String getBMW();
}

public interface BmwModelProvider {
BmwModel getModel();
}

class MyCar {
public BmwModelProvider getCar() {
return new Car();
}

private class Car implements BmwModelProvider {

@Override
public BmwModel getModel() {
return new Model();
}

private class Model implemements BmwModel {

@Override
public String getBMW() {
//...
}
//...
}
}
}

关于java - 嵌套类中的类可访问性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47414459/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com