final
- 对类。阻止该类被继承。如果一个类声明为final,其中的方法自动成为final,但不包含域
- 对方法。子类不能覆盖这个方法
将方法或类声明为final的主要目的是:确保它们不会再子类中改变语义
- 对基本类型。赋值后不能修改其值
- 对引用类型。确定引用后,不能更改引用
abstract抽象类
包含一个或多个抽象方法的类本身必须被声明为抽象的。
类即使不喊抽象方法,也可声明为抽象类,作用是该类不可被实例化。可以定义一个抽象类的对象变量,但是只能引用非抽象的子类对象。
protected
人们希望父类中的某些方法允许被子类访问,或允许子类的方法访问父类的某个域。为此需要将这些方法或域声明为protected。
访问修饰符:
- 仅对本类可见——private
- 对所有类可见——public
- 对本包和所有子类可见——protected
- 对本包可见——默认,不需要修饰符