静态内部类

定义:静态内部类,定义在类中,任何方法外,用static定义;静态内部类只能访问外部类的静态成员。

注意点:

  1. 一般情况下,如果一个内部类不是被定义成静态内部类,那么在定义成员变量或者成员方法的时候,是不能够被定义成静态成员变量与静态成员方法的。也就是说,在非静态内部类中不可以声明静态成员。
  2. 一般非静态外部类可以随意访问其外部类的成员变量以及方法(包括声明为private的方法),但是如果一个内部类被声明为static,则其在访问包括自身的外部类会有诸多的限制。静态内部类不能访问其外部类的非静态成员变量和方法。
  3. 在一个类中创建非静态成员内部类的时候,有一个强制性的规定,即内部类的实例一定要绑定在外部类的实例中,也就是在编译时期,编译器会给外部类江上一个字段就叫做 OuterClassName.this 而如果是静态内部类,外部类就不存在这个属性。也就是要引用内部类首先得 new 出外部类。如果要在一个类中定义一个静态的内部类,不需要利用关键字new来创建外部类的实例。即在创建静态类内部对象时,不需要其外部类的对象存在。

Powered by Hexo and Hexo-theme-hiker

Copyright © 2015 - 2021 昨夜凛雨 All Rights Reserved.

UV : | PV :