为了账号安全,请及时绑定邮箱和手机立即绑定

如何在静态方法中实例化非静态内部类

如何在静态方法中实例化非静态内部类

波斯汪 2019-10-08 15:20:19
我有以下代码:public class MyClass{   class Inner{     int s,e,p;   }   public static void main(String args[]){     Inner in;   }}到目前为止,代码还不错,但是我无法像in=new Inner()显示的那样在main方法中实例化“ in” non static field cannot be referenced in static context。我该怎么做?我不想使内部类保持静态。
查看完整描述

4 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

您还必须参考其他外部类。


Inner inner = new MyClass().new Inner();

如果内在是静态的,那将是


Inner inner = new MyClass.Inner();


查看完整回答
反对 回复 2019-10-08
?
MYYA

TA贡献1868条经验 获得超4个赞

如果new Inner()要从一个方法中创建,请从该类的实例方法中进行MyClass:


public void main(){

  Inner inner = new Inner();

}


public static void main(String args[]){

  new MyClass().main();

}


查看完整回答
反对 回复 2019-10-08
  • 4 回答
  • 0 关注
  • 764 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信