00_01.【Java】嵌套类

一、什么是嵌套类

定义在一个类内部的类被称为「嵌套类」,嵌套类分为两种:static声明和非static声明的。非static声明的嵌套类又有一个专门的名字叫做「内部类」(Inner Class)。相对的,内部定义了类的类就被称为「外部类」。

1、嵌套类有种类

  • 静态嵌套类(Static nested Class):使用static声明的嵌套类称为静态嵌套类,我们直接称为「嵌套类」(Nested Class)。
  • 非静态嵌套类(Non-Static nested Class):非static声明的嵌套类是非静态嵌套类,我们称其为「内部类」(Inner Class)。Inner类又分为3种:
    • 在一个类中直接定义的内部类
    • 在一个方法中定义的内部类
    • 匿名内部类

嵌套类、静态嵌套类和非静态嵌套类的关系:

2、定义嵌套类和内部类的语法

class OuterClass{
   
  //code
  static class StaticNestedClass{
   
    //code
  }
   class InnerClass{
   
     //code
   }
}

静态嵌套类和非静态嵌套类被统为嵌套类,有时候也将静态嵌套类直接称为嵌套类,将非静态嵌套类直接称为内部类。

二、静态嵌套类

1、嵌套类概述

static修饰符使得嵌套类对象称为外部类的静态成员,与外部类直接关联,可以使用外部类名.静态嵌套类名直接访问自身。

实例1:静态欠嵌套类的使用

使用静态嵌套类对象访问外部类的实例变量和实例方法

//定义一个公共的OuterClss类
public class OuterClass{
   
  private final String name;
  
  public static void main(String[] args) {
   
    String name = "java";
    //实例化外部类
    OuterClass outerObject = new OuterClass(name);
    //实例化静态嵌套类
    OuterClass.StaticNestedClass nestedObject = new OuterClass.StaticNestedClass(name);
    System.out.println(outerObject.getName());
    System.out.println(nestedObject.getName());
  }
  
  //定义一个OuterClass类的构造方法</
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值