标题: 编译出错? [打印本页] 作者: 马蒙蒙 时间: 2011-7-29 16:25 标题: 编译出错? 如下代码:
public class Outer{
public String name = "Outer";
public static void main(String argv[]){
Inner i = new Inner();
i.showName();
}//End of main
private class Inner{
String name =new String("Inner");
void showName(){
System.out.println(name);
}
}//End of Inner class
}
当我编译运行时出错了?作者: 匿名 时间: 2011-7-29 17:24
[code=java]class Outer {
public String name = "Outer";
public static void main(String argv[]) {
Inner i = new Outer().new Inner();
i.showName();
}// End of main
private class Inner {
String name = new String("Inner");
void showName() {
System.out.println(name);
}
}// End of Inner class
}[/code]要先创建一个外部类对象,然后再利用这个外部类的对象,创建出内部类对象。
关于内部类的具体信息,请在论坛中,搜索关键字“内部类”。作者: 匿名 时间: 2011-7-29 17:32
虎哥正解,你也可以试试将private class Inner 定义成静态的。作者: 匿名 时间: 2011-7-29 18:05
[img]file:///C:/Users/Administrator/Desktop/4.jpg[/img]
要使用内部类的方法,必须要有外部类支持。