final :
final的作用或用处很强大的一个关键字,可以用来修饰成员变量和成员方法1、用final修饰的类,不能被继承2、用final修饰的方法,不能被覆盖,重写3、用final修饰的变量,不能被修改
static:1、具有固定的作用,用它来完成某种标准功能。2、类的定义已经很完美,不需要再修改。
单例:
- 变量或者方法被定义成静态(static)时,他属于类,不属于对象;
- 类可以直接提取、获取静态变量的值或者成员方法的使用权;
- 非静态对象不能使用外部非静态的变量或方法;
- 静态方法不能被重载;
- static修饰的成员方法和成员变量,不依赖类的实例,被类的所有实例共享
只能创建一个实例。避免每次new一个实例使用,造成性能资源上面的浪费
public class Bank { // 1.定义一个类的静态的对象,并且实例化该对象 private static Bank bank = new Bank(); // 2.定义一个私有的类的构造器、避免外部创建实例 private Bank() { } // 3.定义一个静态的,公开的返回值类型是本类类型的 方法 public static Bank getInstance() { return bank; } }