java静态内部类怎么使用
导读:静态内部类是指在外部类中使用static关键字修饰的内部类。使用静态内部类的语法格式为: public class OuterClass { // 外部类成员变量和方法 public static class InnerC...
静态内部类是指在外部类中使用static关键字修饰的内部类。使用静态内部类的语法格式为:
public class OuterClass {
// 外部类成员变量和方法
public static class InnerClass {
// 静态内部类成员变量和方法
}
}
静态内部类使用的注意事项:
- 静态内部类可以直接访问外部类的静态变量和静态方法,但不能直接访问外部类的非静态变量和非静态方法。
- 静态内部类可以被外部类直接访问,不需要创建外部类的对象。
- 静态内部类可以有自己的静态变量和静态方法,与外部类的静态变量和静态方法不冲突。
- 外部类的对象不能直接访问静态内部类的成员变量和成员方法,需要通过创建静态内部类的对象来访问。
示例代码如下:
public class OuterClass {
private static int outerStaticVar = 1;
private int outerVar = 2;
public void outerMethod() {
System.out.println("OuterClass outerMethod");
}
public static class InnerClass {
private static int innerStaticVar = 3;
private int innerVar = 4;
public void innerMethod() {
System.out.println("InnerClass innerMethod");
}
public static void innerStaticMethod() {
System.out.println("InnerClass innerStaticMethod");
}
}
public static void main(String[] args) {
// 直接访问静态内部类的静态变量和静态方法
System.out.println(InnerClass.innerStaticVar);
InnerClass.innerStaticMethod();
// 创建静态内部类的对象,并访问其成员变量和成员方法
InnerClass innerObj = new InnerClass();
System.out.println(innerObj.innerVar);
innerObj.innerMethod();
// 外部类的对象不能直接访问静态内部类的成员变量和成员方法
// System.out.println(innerVar);
// 编译错误
// innerMethod();
// 编译错误
}
}
以上代码中,静态内部类InnerClass可以直接访问外部类的静态变量outerStaticVar和静态方法outerMethod,并且可以有自己的静态变量innerStaticVar和静态方法innerStaticMethod。外部类的对象不能直接访问静态内部类的成员变量和成员方法,需要通过创建静态内部类的对象来访问。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: java静态内部类怎么使用
本文地址: https://pptw.com/jishu/567635.html
