Java语言中的修饰符可以修饰类、变量和方法。灵活正确地运用这些修饰符,会使软件程序最贴切地模拟真实世界中的系统,并且有助于提高软件系统的可重用性、可维护性、可扩展性及系统的运行性能。这些修饰符是以下四种:
1、访问控制修饰符(public、protected、默认和private)【作用域访问修饰符】
2、abstract修饰符
- 抽象类不能被实例化。
- 抽象类中可以没有抽象方法,但包含了抽象方法的类必须被定义为抽象类。
- 如果子类没有实现父类中的抽象方法,子类必须定义为抽象类。
- 抽象类不能被定义为private、final和static类型。
- 没有抽象构造方法。
- 抽象方法没有方法体。
- 用final修饰的类不能被继承。
- 用final修饰的方法不能被子类方法覆盖。
- private类型的方法默认为是final方法,因而不能被子类的方法覆盖。
- final变量必须是显示初始化,并且只能被赋一次值。
4、static修饰符
- 静态变量在内存中只有一个拷贝,在类的所有实例中共享。
- 在静态方法中不能直接访问实例方法和实例变量。
- 在静态方法中不能使用this和super关键字。
- 静态方法不能被abstract修饰。
- 静态方法和静态变量都可以通过类名直接访问。
- 当类被加载时,静态代码块只被加载一次。类中不同的静态代码块按它们在类中出现的顺序依次执行。
许多修饰符可以连用,例如:
private static final int MAX_COUNT = 1;
public static final void main(String args[]) {};
protected abstract void method();
当多个修饰符连用的时候,修饰符的顺序是可以颠倒的
private static final int MAX_COUNT = 1;
static private final int MAX_COUNT 1= 1;
finalstatic private int MAX_COUNT = 1;
参考:http://crazy-rabbit.iteye.com/blog/434158