一、final关键字
final 可以修饰在类、成员变量、方法。
1、如果修饰类:则该类不会被继承(一般在开发中很少使用 );
2、如果修饰成员变量:一旦给成员变量赋值后就不允许修改其值,一般用在对常量的定义中。
3、如果修饰方法:该方法不能被重写。
在实际的开发中, final 用的最多的场景是结合 static 关键字定义类变量,即静态变量。
定义为 final 另一个意图就是将变量的值保护起来
二.内部类
内部类一般分为四类
成员内部,类静态内部类,局部内部类,匿名内部类
三、访问修饰符(权限)
1、public: 所修饰的类、变量、方法,在内外包均具有访问权限;
2、protected: 这种权限是为继承而设计的,protected所修饰的成员,对所有子类是可访问的,但只对同包的类是可访问的,对外包的非子类是不可以访问;
3、包访问权限(default): 只对同包的类具有访问的权限,外包的所有类都不能访问;
4、private: 私有的权限,只对本类的方法可以使用;
public > protected > default(包访问权限) > private
作用范围:
访问修饰符\作用范围 所在类 同一包内其他类 其他包内子类 其他包内非子类
private 可以访问 不可以 不可以 不可以
缺省 可以 可以 不可以 不可以
protected 可以 可以 可以 不可以
public 可以 可以 可以 可以