内部类的特点和应用场景

内部类的特点和应用场景

    • 特点
    • 应用场景

特点

  1. 静态内部类是指被声明为static的内部类,不能访问外部类的普通成员变量,只能访问外部类中的静态成员变量和静态方法。
  2. 去掉关键字static就是成员内部类,可以自由的引用外部类的属性和方法。
  3. 局部内部类是指定义在一个代码块内的类,作用范围为其所在的代码块。局部类类似于局部变量一样,不能被public、protected、private以及static修饰,只能访问方法中定义为final类型的局部变量。
  4. 匿名内部类,是一种没有类名的内部类,不使用关键字class、extends、implements,它必须继承其他类或实现其它接口。
    - 匿名内部类不能有构造函数
    - 不能定义静态成员、方法和类
    - 不能是public、protected、private、static。
    - 只能创建匿名内部类的一个实例
  5. 内部类可以直接访问外部类中的成员。
  6. 外部类要访问内部类,必须建立内部类的对象。

应用场景

  1. 场景一:当某个类除了它的外部类,不再被其他的类使用时
  2. 场景二:解决一些非面向对象的语句块
  3. 场景三:一些多算法场合
  4. 场景四:适当使用内部类,使得代码更加灵活和富有扩展性

点击这里查看场景详情分析

你可能感兴趣的:(内部类的特点和应用场景)