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

主方法中创建内部类报错,啥原因求大佬

public class SOuter {

private int a=2;

static int b=1;


public class SInner {

 int b=3;

public void show() {

System.out.println("访问外部类中的b:"+SOuter.b);

System.out.println("访问内部类中的b:"+b);

}

}

public static void main(String[] args) {

SInner si=new SInner();

si.show();

}


}


正在回答

4 回答

内部类不是静态内部类,不能访问外部类的静态成员

0 回复 有任何疑惑可以回复我~

如果你要这样创建内部对象,那么你内部类中的方法就是要为静态方法。要不然你创建内部对象,必须先创建外部对象,再利用外部对象在创建内部对象,即代码为:SOuter so = new SOuter();  SInner sl = so.new SInner();

0 回复 有任何疑惑可以回复我~

你的内部类是成员内部类,在主函数里面的创建方法应该是通过外部类创建的,你可以看一看上一节,

0 回复 有任何疑惑可以回复我~

额,找到错误了,能撤回吗·,少了个static

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

主方法中创建内部类报错,啥原因求大佬

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信