谁能帮小弟解释一下下面这个.java文件,我看DAO看到这里就开始不明白了,请教各位。解释最好详细一点,谢谢!DAOFactory.java
package login3.db.factory;import login3.db.DAOInterface.UserDAO;
import login3.db.kingdao.factory.DAOFactory_kingdao;public abstract class DAOFactory { private static Object initLock = new Object(); //这个线程锁是什么意思? private static DAOFactory factory = null; //为什么要将本类的实例作为私有属性呢? public static DAOFactory getInstance() {
if (factory == null) {
synchronized (initLock) { //这行是什么意思?
if (factory == null) {
try { factory = new DAOFactory_kingdao(); //为什么要new一个DAOFactory_kingdao()方法? } catch (Exception e) { e.printStackTrace();
return null;
}
}
}
}
return factory;
}
public abstract UserDAO createUserDAO();
}
package login3.db.factory;import login3.db.DAOInterface.UserDAO;
import login3.db.kingdao.factory.DAOFactory_kingdao;public abstract class DAOFactory { private static Object initLock = new Object(); //这个线程锁是什么意思? private static DAOFactory factory = null; //为什么要将本类的实例作为私有属性呢? public static DAOFactory getInstance() {
if (factory == null) {
synchronized (initLock) { //这行是什么意思?
if (factory == null) {
try { factory = new DAOFactory_kingdao(); //为什么要new一个DAOFactory_kingdao()方法? } catch (Exception e) { e.printStackTrace();
return null;
}
}
}
}
return factory;
}
public abstract UserDAO createUserDAO();
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货