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();
}
}
}
本地类就是定义在方法内部的类。
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.");
}
}
}
}
匿名类,又称为匿名内部类。其实就是一个无名的本地类。
class Test {
void method(new Object() {
public String toString() {
System.out.println("Hi, I'm an anonymous class.");
}
});
}