3

我看到了一个不寻常的事件。请帮助我如何实例化在方法中编写的类。下面的程序在 Netbeans 中编译成功

  class OuterClass
    {
      int instanceVar;
      void InstanceMethod()
       {
          class InnerClass
           {
             int innerClassVar;
           }
       }
    }
4

3 回答 3

8

就像任何其他对象一样做:

class OuterClass
{
  int instanceVar;
  void InstanceMethod()
   {
      class InnerClass
       {
         int innerClassVar;
       }

       //...

       InnerClass myInstance = new InnerClass();
   }
}
于 2013-07-24T20:45:54.790 回答
4

只是补充一点:这些被称为Local Classes正如morgano 的回答中所指出的,您在方法中像“普通”类一样实例化它们

于 2013-07-24T20:53:53.740 回答
1

只能在方法内部使用,通常应该是静态类。

于 2013-07-24T20:46:16.827 回答