首页 > Java教程 > Java继承和多态 阅读:13,432

Java静态内部类

静态内部类是指使用 static 修饰的内部类。示例代码如下:
public class Outer {
    static class Inner {
        // 静态内部类
    }
}
上述示例中的 Inner 类就是静态内部类。静态内部类有如下特点。

1)在创建静态内部类的实例时,不需要创建外部类的实例。
public class Outer {
    static class Inner {

    }
}
class OtherClass {
    Outer.Inner oi = new Outer.Inner();
}
2)静态内部类中可以定义静态成员和实例成员。外部类以外的其他类需要通过完整的类名访问静态内部类中的静态成员,如果要访问静态内部类中的实例成员,则需要通过静态内部类的实例。
public class Outer {
    static class Inner {
        int a = 0;    // 实例变量a
        static int b = 0;    // 静态变量 b
    }
}
class OtherClass {
    Outer.Inner oi = new Outer.Inner();
    int a2 = oi.a;    // 访问实例成员
    int b2 = Outer.Inner.b;    // 访问静态成员
}
3)静态内部类可以直接访问外部类的静态成员,如果要访问外部类的实例成员,则需要通过外部类的实例去访问。
public class Outer {
    int a = 0;    // 实例变量
    static int b = 0;    // 静态变量
    static class Inner {
        Outer o = new Outer;
        int a2 = o.a;    // 访问实例变量
        int b2 = b;    // 访问静态变量
    }
}

关注微信公众号「魏雪原」,跟着站长一起学习,拒绝躺平,跳出内卷,用知识完成阶级跃升:

  • 每日更新,坚持原创,敢说真话,凡事有态度。
  • 编程+求职+创业+营销,既有硬知识,也有软技能。
  • 手机端阅读教程,随时随地都能学习。
  • 即将绑定网站部分功能,包括注册登录、找回密码、获取下载链接等。

魏雪原二维码
微信扫描二维码关注魏雪原