For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
软件设计模式一直以来都是Java程序员在开发软件的时候会经常用到的一个编程开发技术,而本文我们就通过案例分析来简单了解一下,享元模式的概念与应用分析。
1、描述
以共享的方法高效地支持大量细粒度对象的复用。在Java中,通过提前初始化对象或者次使用后记录对象,后续使用就可以复用对象来实现享元模式。类似缓存技术。
2、模式结构
享元对象:可复用对象。
享元工厂类:享元对象的工厂类,负责创建、储存享元对象。客户端从工厂类请求对象有则返回,没有则创建
一个放入工厂类。例如String类的缓存池和数据库的连接池。
3、实现逻辑
享元模式实现的关键是需要区分对象的内蕴状态和外蕴状态。简单点解释就是,内蕴状态就是可被共享的部分;外蕴状态就是不可共享的部分,需要客户端提供的部分。Java中实现享元模式,就是把内蕴部分剥离出来静态化,客户端调用时提供外蕴状态(当然对象可以没有外蕴部分)。
4、实战代码
RBAC模型基于角色的权限控制。通过角色关联用户,角色关联权限的方式间接赋予用户权限。
我们知道对于用户来讲,每个用户都有自己的编号、姓名,但是会存在多个用户都是同一个角色。在这里编号、姓名就属于外蕴状态,而角色就属于内蕴状态。
5、适用场景
相同对象或者相似对象需要频繁创建时,适合使用享元模式。
6、享元模式与单例模式的区别
单例模式的目的是为了确保一个类只存在一个对象,需要自行实例化并提供全局访问方法。
享元模式的目的是为了对对象内蕴部分的复用,无需保证一个类只存在一个对象。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。