java静态内部类怎么使用

   2025-02-15 5090
核心提示:静态内部类是指在外部类中使用static关键字修饰的内部类。使用静态内部类的语法格式为:public class OuterClass {// 外部类成员

静态内部类是指在外部类中使用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。外部类的对象不能直接访问静态内部类的成员变量和成员方法,需要通过创建静态内部类的对象来访问。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言