Java的特殊類用法:檔案類、內部類、本地類、匿名類

鍾超發表於2011-11-06

1. 檔案類

Test 是一個檔案類。

class Test {
   static void method() {
      //...
   }
}

public class Driver {
   public static void main(String[] args) {
      Test.method();
   }
}


2. 內部類

class OuterClass {
   int outerData;
   static int s_outerData;
   void outerMethod() {}
   static void s_outerMethod() {}
   class InnerClass {
      int innerData;
      void innerMethod() {
         innerData = outerData;
         innerData = s_outerData;
         outerMethod();
         s_outerMethod();
      }
   }
}


3. 本地類

本地類就是定義在方法內部的類。

class A {
   int data;
   void method() {
      class B {
         int local_data;
         void local_method() {
            System.out.println("I'm the method in the local class.");
         }
      }
   }
}


4. 匿名類

匿名類,又稱為匿名內部類。其實就是一個無名的本地類。

class Test {
   void method(new Object() {
      public String toString() {
         System.out.println("Hi, I'm an anonymous class.");
      }
   });
}

相關文章