Java设计模式
2023-12-28 12:23:10
1.设计原则简述
设计原则分为:
- 开闭原则:对扩展开放,对修改关闭—就是说现在我们系统正在运行,现在要新增一个需求,尽量不要在原来平稳运行的地方修改,最好扩展一个功能模块出来
- 里氏替换原则:继承一个父类的时候尽量去添加新的方法去完成我们的需求,最好不要去重写父类的方法去完成需求
- 依赖倒置原则:尽量面向接口编程,降低程序之间的耦合性
- 单一职责原则:一个方法最好做一件事情,提高内聚性
- 接口隔离原则:为各个类建立它们专用的接口来提供服务,降低耦合性,提高内聚性
- 迪米特法则:只与你的直属类交互,例如 有ABC三个类,A B是直属类,现在A想和C交互,那么A最好是和B交互然后由B去通知C
- 合成复用原则:尽量使用组合和聚合关系实现,最后再考虑继承
这些只是原则,尽量遵守,具体实现还要以系统架构的健壮性来做参考。
2.单例模式
单例模式就是只有一个实例对象,在一个类中始终只有一个对象进行操作,这样可以极大减少内存的开支和系统性能消耗,
应用场景:数据库连接类,只需要创建一个对象或直接使用静态方法就可以,没必要创建多个对象
注意事项:
- 单例类必须构造方法私有化
- 单例类必须自己创建自己的唯一实例
- 单例类必须给所有其他对象提供创建的实例
饿汉式:最普通的单例模式写法
优点:保证线程安全
缺点:容易产生垃圾对象消耗空间
/**
* 单例模式-饿汉
*/
public class SingleTest {
/**
* 单例模式核心-构造方法私有化
*/
private SingleTest(){}
/**
* 用全局引用唯一单例对象
*/
private final static SingleTest singleTest=new SingleTest();
/**
* 获取全局唯一的单例对象
*/
public static SingleTest getInstance(){
return singleTest;
}}
懒汉式:为了避免饿汉式出现的类创建不被使用造成的资源浪费问题,懒汉式只有用到的时候才创建对象
优点:避免了创建对象不适用的资源消耗问题
缺点:线程不安全,多线程环境下容易判空失效
/**
* 单例模式-懒汉
*/
public class SingleTest {
/**
* 单例模式核心,构造方法私有化
*/
private SingleTest(){}
/**
* 懒汉式- 开始不创建对象
*/
private static SingleTest singleTest;
/**
* 获取全局唯一单例对象,使用时创建对象
*/
public static SingleTest getInstance(){
if (singleTest==null){ //判断实例为空就创建,否则不创建对象,避免了资源消耗
singleTest=new SingleTest();
}
return singleTest;
}
}
未完。。。待续?
?
?
文章来源:https://blog.csdn.net/RHHcainiao/article/details/135265517
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!