1.abstract
abstract关键字可以用来修饰类和方法
abstract类可以通过子类来扩展,但是不能够直接实例化
abstract方法在声明的时候没有实现,但必须在声明方法的abstract类的子类中重写
abstract方法所在的类也是abstract的,如果abstract类的子类并没有实现其父类的所有方法,那么这个子类也是abstract类型的。
abstract关键字不能同static private 和 final 同时出现,因为abstract类型是通过其子类来实现的,但static private 和 final 要求其不能有子类或在子类中实现
final类中不可能有abstract方法,因为final类是不会有子类的。
2.final
final关键字可用于声明常量,如 final int a = 10;声明或后是不可修改的;
final关键字可用于声明类,该类是不可被继承的
fianl关键字可用于方法,该方法在其所在类的任何子类中不可被重写override
3.private
访问控制修饰符,可用于类,方法和变量
被private修饰之后表示为私有,不可在该类以外的任何类包括子类中访问。
4.protected
访问控制修饰符,可用于类,方法和变量
protected修饰的方法或变量将会被任何位置的子类继承,但是永远只能被最早定义他的父类所在的包的类所见(除了该类以及其子类能看到本身的该protected方法或变量之外。)
native
nateve关键字可用于方法,来表明该方法是用Java以外的语言实现的