单例模式:
一个类只能有一个实例(每次实例化这个类时获得同一个实例);
这个实例是唯一的,故建在内部;
整个系统都可以来获取这一实例。
控制构造方法,使得不能随意产生对象。
单例模式主要保证在java应用程序中,一个类只有一个实例存在。
实现方法有很多种,下面是其中一种实现代码:
public class Singleton {
//私有声明
private static Singleton singleton=null;
/**
* 私有构造函数
*/
private Singleton(){
}
/**
* 向外部提供的方法
* 外部调用此方法来获得实例
* @return
*/
public synchronized static Singleton getInstance(){
if (singleton==null) {
singleton=new Singleton();
}
return singleton;
}
}
final类型的不能被继承,不能被扩展
使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。
(
final StringBuffer sf
= new StringBuffer("abc");
sf = new StringBuffer(""); //报错误
sf.append("add"); //正确
)