单例模式 - 程序实现(Java)
2024-09-02 03:25:09
我们知道单例模式,其实就是返回一个被调用类的实例。
在频繁的进行实例(Instance)创建过程,难免过多的进行new InstanceName();我们可以只通过调用一个方法解决。
在进行设计模式的程序实现中xiaobin使用已编写的SSL程序做演示。
------------------------------------------------------------------------------------------tdtc tech-----------------------------------------------------
目 的:建立SSL连接
类 图:
源 码:
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;
}
}
最新文章
- Windows下Memcached安装与配置实例
- CUDA2.1-原理之索引与warp
- Git+Gradle+Eclipse构建项目
- Android编译中m、mm、mmm的区别
- python中urllib和urllib2的简单用法
- Swift学习笔记十五
- 修练8年C++面向对象程序设计之体会
- Android与PHP服务器交互
- windows live writer 下载及安装
- C++----练习--引用头文件
- Dev的关于XtraGrid的使用2
- 蓝桥杯-凑算式-java
- Serializable序列化的作用
- hdu1995 汉诺塔V
- Android开发艺术探索笔记——第一章:Activity的生命周期和启动模式
- Android版本更新时对SQLite数据库升级或者降级遇到的问题
- D - The Lucky Week ZOJ - 3939 (思维)
- PHP 抽象类
- address sizes : 46 bits physical, 48 bits virtual
- mmap 函数