设计模式的理解--创建型

单例模式

单例,望名识意,表达单个的意思,当你调用时当不存在的时候生成一个对象
当调用的时候就不能在让他继续生成,如果谁调用都可以生成,那就不叫单例了
代码其实有很多种,相对产生多种叫法,例如懒汉式,饿汉式等。总结就是当存在的时候不能生成第二个

工厂模式

工厂像一个大集体,当复杂业务的出现时,那其中肯定存在多种功能。比如:现实中的工厂存在着多个车间,每个车间有自己的任务职责,当需要那一步骤时就进入对应的车间,最终等待产品的出厂,工厂模式其实是一样的,可以定义一个接口 interface 然后构造对应的方法并实现,当你需要的时候你可以任意调用其方法,最终实现自己的需求。

举例: dao service impl 银行系统合同业务的impl中,如果合同的impl中a,b,c方法都用到 (select t.* from table t where t.id = parameter) 意味着service中需要写出对应的查询方法 那不相当于service是一个抽象工厂 ,impl是具体工厂,可以省去大量重复的查询方法。

注:一个接口中可以定义多个方法 ,你认为这个方法跟这个接口有关 你就可以写在里面,举例中合同表的service 还可以写有关用户表crud的方法,只要你认为这个方法放在这里合理就可以。

原型模式

原型类似你的克隆体,如同克隆羊多莉,孙悟空七十二变,在Java层面分为浅克隆和深克隆,浅克隆代表着复制之后产生的对象,如果进行修改内容 那也影响着本体对象的内容修改,深克隆与之相反

注:类需要实现Cloneable接口,否则会抛出CloneNotSupportedException异常。

建造者模式

无论房屋的建造还是航母的建造 他都有对应的流程,应该按照什么的顺序进行组装,最终塑造出一个完整的物品,其实和工厂模式有类似 但是工厂模式不强调顺序 一个方法我可以只被调用一次 另一个方法会被调用多次 但是建造者模式中不能这样 ,他是强调顺序 在你执行下一步之前必须满足条件 ,所以又说和工厂模式不一样。根据业务来采用不同的模式

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值