我有以下安排(没有显示所有字段和方法):
public class MyClass implements myClassInterface{
public static MyClass getInstance(){
return INSTANCE;
}
public class Inner implements innerStuff{
@Override
public void doInnerWork(Object param){
}
}
}
我需要访问doInnerWork(param)
。我怎么做?我尝试了很多东西,但都失败了,包括:
new (MyClass.getInstance().Inner()).doInnerWork(param);
感谢您的帮助。
答案 0 :(得分:4)
MyClass.getInstance().new Inner().doInnerWork(param);
请注意,这将每次创建一个新的内部类(它不会是单例)。
答案 1 :(得分:0)
要创建嵌套类Inner
的实例,您希望它嵌套在某个对象obj
中,语法为
obj.new Inner()
所以在你的情况下你可能想要
MyClass.getInstance().new Inner().doInnerWork(param);
我不是说这会给你想要的结果,但这就是语法。