目录 普通内部类特点代码 静态内部类特点代码 匿名内部类特点代码 局部内部类特点代码 普通内部类 特点 实例化依赖于外部类可以定义成员变量,成员方法,成员类不能定义静态变量,静态方法,静态类可以访问外部类的所有变量和方法 代码 public class MainTest { public class InnerClass { } } 静态内部类 特点 实例化不依赖外部类可以定义所有变量,所有方法,所有类可以访问外部类的静态变量和静态方法不能访问外部类的成员变量和成员方法 代码 public class MainTest { public static class InnerClass { } } 匿名内部类 特点 可以定义成员变量,成员方法,成员类不能定义静态变量,静态方法,静态类可以访问外部类的所有变量和方法 代码 public class MainTest { public void aaa() { Thread thread = new Thread(new Runnable() { @Override public void run() { } }); } } 局部内部类 特点 可以定义成员变量,成员方法,成员类不能定义静态变量,静态方法,静态类可以访问外部类的所有变量和方法 代码 public class MainTest { public void aaa() { class InnerClass { } } }