getInstance()方法的作用
getInstance()指实例化,与new类似,但是于new又有很大的区别
//实例化
public static DBConnect instance;
public static DBConnect getInstance(){
if (instance == null) {
instance = new DBconnect();
}
return instance;
}
getInstance在单例模式(保证一个类仅有一个实例,并提供一个访问它的全局访问点)的类中常见,用来生成唯一的实例,getInstance往往是static的。
一般用于比较大、复杂的对象,只初始化一次,而getInstance保证了每次调用都返回相同的对象。
getInstance()和new的区别##
* (1) 对象使用之前通过getInstance得到而不需要自己定义,用完之后不需要delete;
* (2)new 一定要生成一个新对象,分配内存;getInstance() 则不一定要再次创建,它可以把一个已存在的引用给你使用,这在效能上优于new;
* (3) new创建后只能当次使用,而getInstance()可以跨栈区域使用,或者远程跨区域使用。所以getInstance()通常是创建static静态实例方法的。