首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

java内部类的小疑点

2012-09-28 
java内部类的小问题public classOuter{class Inner{}}然后实例化内部类对象时在eclipse上报错,代码如下pub

java内部类的小问题
public class Outer{

  class Inner{
 
  }
}

然后实例化内部类对象时在eclipse上报错,代码如下

public class Test1 {
public static void main(String[] args) {
Outer a = new Outer();
a.Inner b = new a.Inner();//这一步编译不通过,改成Outer.Inner b = new Outer.Inner()也报错
}
}


这是什么原因,我个人觉得不应该报错。但就是报错了,

[解决办法]
非静态的内部类 必须要有外部类的实例才能创建,你的问题是内部类的 名称写的不对a.Inner的声明不对,应该用Outer.Inner b就正常了

Java code
public static void main(String[] args) {        Outer a = new Outer();        Outer.Inner b=a.new Inner();    } 

热点排行