public class InnerClass{

public class InnerTool { public void dodo() {
System.out.println("dodo()");
}
} InnerClass.InnerTool tool = new InnerClass.InnerTool();         tool.dodo();//出错代码
}请问为什么对象tool,不能访问dodo()方法?
正确该怎么写呢?
谢谢

解决方案 »

  1.   

    编译错还是异常?另外tool.dodo();这个语句怎么能写到类里面呢?应该写在某method里面啊!是什么方法?
      

  2.   

    我的要求很简单
    在一个class中写一个内部类,内部类里写一个方法,然后在这个class中实例化这个内部类,调用下内部类的方法.(PS:我只想在这个class里调用)
      

  3.   

    这样可以不过不知道是不是你想要的public class InnerClass { public class InnerTool { public void dodo() {

    System.out.println("dodo()");
    }
    }
             public void c () {     InnerTool tool = new InnerTool();     tool.dodo();
            }
    }
      

  4.   

    你是希望在类装载的时候执行dodo()还是在对象初始化的时候执行dodo()?1.在类装载的时候执行dodo(),可以这么做:
    static {
    InnerTool tool = new InnerTool();
    tool.dodo();
    }在对象初始化的时候执行dodo(),可以把那两行语句放到构造函数中。
      

  5.   

    public class InnerClass{public class InnerTool {public void dodo() {
    System.out.println("dodo()");
    }
    }
    public static void main(String args[]){
    InnerClass innerclass=new InnerClass();InnerClass.InnerTool tool =innerclass.new InnerTool();         tool.dodo();}
    }
    你要这样才可以实例化一个内部类 必须也要将外部类给实力了