Java 中的静态与非静态嵌套类
嵌套类,也称为内部类,提供了一种对相关类进行分组的方法在单个源文件中。但是,静态嵌套类和非静态嵌套类之间存在关键区别。
静态嵌套类
与非静态嵌套类不同,静态嵌套类没有访问权限到封闭类的非静态字段或方法。它们是使用封闭类中的 static 关键字声明的。
public class OuterClass { private int x; public static class StaticNestedClass { public void doSomething() { // Cannot access 'x' as it is non-static } } }
非静态嵌套类
非静态嵌套类,也称为内部类,具有访问封闭类的静态和非静态成员。他们可以直接访问非静态字段和方法,以及使用 OuterClass.staticMember 语法访问静态成员。
public class OuterClass { private int x; public class NonStaticNestedClass { public void doSomething() { System.out.println(x); } } }
主要区别
示例用法
以上是Java 中静态和非静态嵌套类的主要区别是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!