大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > Java技巧 > 单例模式-程序实现(Java)

单例模式-程序实现(Java)

关键词:Java单例模式-程序实现(Java)  阅读(512) 赞(19)

[摘要]本文主要是对单例模式-程序实现(Java)的讲解,希望对大家学习单例模式-程序实现(Java)有所帮助。

  我们知道单例模式,其实就是返回一个被调用类的实例。

  在频繁的进行实例(Instance)创建过程,难免过多的进行new InstanceName();我们可以只通过调用一个方法解决。

  在进行设计模式的程序实现中xiaobin使用已编写的SSL程序做演示。

  ------------------------------------------------------------------------------------------tdtc tech-----------------------------------------------------

  目   的:建立SSL连接

  类   图:

  源   码:

  [java]

  public class ConnectionSSL {

  private final int DEFAULT_PORT = 7000;

  public final String algorithm = "SSL";

  private int port;

  private String propertyPath;

  private String keyPath;

  private static ConnectionSSL conn = new ConnectionSSL();

  private ConnectionSSL() {

  // TODO Auto-generated constructor stub

  propertyPath = getPropertyPath();

  port = getPort(propertyPath);

  if(port == 0) {

  port = DEFAULT_PORT;

  }

  keyPath = getKeyPath(propertyPath);

  }

  public static ConnectionSSL getInstance() {

  return conn;

  }

  private String getPropertyPath() {

  String path = System.getProperty("user.dir")

  + File.separator + "port.properties";

  return path;

  }

  private String getKeyPath(String filePath) {

  Properties p = new Properties();

  try {

  p.load(new FileInputStream(filePath));

  } catch (Exception e) {

  // TODO: handle exception

  }

  String path = p.getProperty("key");

  return path;

  }

  private int getPort(String filePath) {

  Properties p = new Properties();

  try {

  p.load(new FileInputStream(filePath));

  } catch (Exception e) {

  // TODO: handle exception

  }

  //p.clear();

  String strPort = p.getProperty("port");

  int port = Integer.parseInt(strPort);

  return port;

  }

  }

  public class ConnectionSSL {

  private final int DEFAULT_PORT = 7000;

  public final String algorithm = "SSL";

  private int port;

  private String propertyPath;

  private String keyPath;

  private static ConnectionSSL conn = new ConnectionSSL();

  private ConnectionSSL() {

  // TODO Auto-generated constructor stub

  propertyPath = getPropertyPath();

  port = getPort(propertyPath);

  if(port == 0) {

  port = DEFAULT_PORT;

  }

 

  keyPath = getKeyPath(propertyPath);

  }

  public static ConnectionSSL getInstance() {

  return conn;

  }

  private String getPropertyPath() {

  String path = System.getProperty("user.dir")

  + File.separator + "port.properties";

  return path;

  }

  private String getKeyPath(String filePath) {

  Properties p = new Properties();

  try {

  p.load(new FileInputStream(filePath));

  } catch (Exception e) {

  // TODO: handle exception

  }

  String path = p.getProperty("key");

  return path;

  }

  private int getPort(String filePath) {

  Properties p = new Properties();

  try {

  p.load(new FileInputStream(filePath));

  } catch (Exception e) {

  // TODO: handle exception

  }

  //p.clear();

  String strPort = p.getProperty("port");

  int port = Integer.parseInt(strPort);

  return port;

  }

  }



相关评论