java - 如何从另一个方法访问本地内部类的字段?

标签 java

考虑本地内部类MyValue的字段bar:

public class C {

public static void main(String x[]) {

    class MyValue implements IValue {
    String bar = "bar";
    public String  getValue() {
        return "my value";
    } 
    }
    MyValue myValue = new MyValue();

    D d = new D();
    d.accessBar(myValue);
}
}      

它实现了IValue接口(interface):

interface IValue {
public String getValue();
}

如何从另一个函数(main 之外)访问字段 bar,比如说在类 D 中:

class D {
public void accessBar(IValue value) {
    String info = value.getValue() + value.bar;
}   
}

最佳答案

如果您需要访问船舶的密码并且您只有 IShip 接口(interface),那么 IShip 应该有一个 getPassKey() 方法,基本上。即使您可以在方法中转换为 ShipAddress,您不应该这样做 - 您应该使 calculatedInfo 方法的参数类型合适对于该方法所需的所有操作。

可以通过反射访问它,但这会非常脆弱,我强烈建议您不要这样做。

关于java - 如何从另一个方法访问本地内部类的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30297662/

相关文章:

java - Java Compact Profiles 真的会减少内存占用吗?

Javadoc 模板生成器

java - 在java中防止同一用户的多个用户登录

java - 在 Eclipse IDE 中定义新的 Java 模板

java - 使用 SwingX 对 JXTable 进行排序

java - GTGE 的 Java 数学问题

java - 我应该把我的 css 文件放在 Intellij IDEA 的什么地方

java - 如何将数据从servlet发送到rest api

java - 在缓冲图像上绘制油漆?

java - 如何将我的自定义对象存储在sql数据库中