J2SE综合:关于private构造函数
来源:优易学  2011-3-31 15:38:29   【优易学:中国教育考试门户网】   资料下载   IT书店

 

  private HibernateSessionFactory() {
  }
  }
  在这个类中,用到了私有构造函数,如粗体部分.
  我的调用类:
  package zy.pro.td.plugin;
  /*
  * Created on Oct 4, 2004
  *
  * To change the template for this generated file go to
  * Window>Preferences>Java>Code Generation>Code and Comments
  */
  import javax.servlet.ServletException;
  import org.apache.struts.action.ActionServlet;
  import org.apache.struts.action.PlugIn;
  import org.apache.struts.config.ModuleConfig;
  import javax.naming.Context;
  import javax.naming.InitialContext;
  import zy.pro.td.util.HibernateSessionFactory;
  /** *
  *This class will initialize hibernate and bind SessionFactory in JNDI at the
  *time of application and startup and unbind it from JNDI at the time of application
  * shutdown
  */
  public class HibernatePlugin
  implements PlugIn {
  private static final String jndi_hibernate = "jndi_hibernate_factory";
  private  HibernateSessionFactory hsf;
  private String name;
  public HibernatePlugin() {
  hsf=new HibernateSessionFactory();
  }
  // This method will be called at the time of application shutdown
  public void destroy() {
  System.out.println("Entering HibernatePlugIn.destroy()");
  //Put hibernate cleanup code here
  System.out.println("Exiting HibernatePlugIn.destroy()");
  }
  //This method will be called at the time of application startup
  public void init(ActionServlet actionServlet, ModuleConfig config) throws
  ServletException {
  System.out.println("Entering HibernatePlugIn.init()");
  System.out.println("Value of init parameter " + getName());
  //Uncomment next two lines if you want to throw UnavailableException from your servlet
  //if(true)
  //throw new ServletException("Error configuring HibernatePlugIn");
  System.out.println("Exiting HibernatePlugIn.init()");
  }
  private void bindFactoryToJNDI() {
  try {
  Context ctx = new InitialContext();
  }
  catch (Exception e) {
  e.printStackTrace();
  }
  }
  public String getName() {
  return name;
  }
  public void setName(String string) {
  name = string;
  }
  }在调用类中,我创建了一个HibernateSessionFactory的对象,但是在初始化时,却出了问题.总提示说:
  HibernateSessionFactory() has private access in zy.pro.td.util.HibernateSessionFactory at line 35(35:9)
  然后,我就将HibernateSessionFactory的构造函数由private改成了public,调试通过.
  构造函数为私有,就不能创建该类的对象.

上一页  [1] [2] 

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训