怎么使用web设计模式中享元模式

技术怎么使用web设计模式中享元模式这篇文章主要讲解了“怎么使用web设计模式中享元模式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用web设计模式中享元模式”吧

本文主要讲解“如何在网页设计模式中使用欣赏元模式”。本文的解释简单明了,易学易懂。请跟随边肖的思路,一起学习《如何在网页设计模式中使用欣赏元模式》!

享元模式

首先,我们来看看什么是享受模式。维基百科解释说,享受模式(英文:Flyweight Pattern)是一种软件设计模式。它使用共享对象来最小化内存使用,并与尽可能多的相似对象共享信息。当大量对象只是重复时,它适用于不可接受地使用大量内存。通常,对象中的某些状态可以共享。通常的做法是将它们放在外部数据结构中,然后在需要使用它们时将它们传递给涉众。

关键词:减少内存、共享对象、外部数据

简述一批对象中既有相同内容又有不同内容,共享相同内容,动态传输不同内容,最大限度减少对象的产生。这里需要理解的是,这多个对象实际上对应的是底部的同一个对象,物理地址是一个。

享元模式使用场景

元共享模式还有很多使用场景。最常见的场景是Java JDK中的字符串类。因为JVM中有一个常量池,常量池的实现是一种元共享模式,避免了多个相同对象的存在。此外,线程池和很多使用缓冲池的地方都采用共享模式,比如整数类中-128到127之间的整数的默认缓存等等。

在演示共享模式之前,我们应该先了解一下共享模式中涉及到的几个角色名称。

抽象集成类:通常是一个接口,主要提供修改内部数据的外部接口。

具体享受类:享受类的实现类,通常存储在内存中,使用方便。

享受元工厂类:外部创建特定的享受元类。

让我们用一个简单的例子来演示享受模式。我们创建一个接口类,然后编写一个实现类,然后通过工厂创建享受类。相关代码如下:

UML 图解

怎么使用web设计模式中享元模式

代码演示

让我们创建一个接口类IFlyweight.java,它包含一个设置宽度的方法,如下所示

怎么使用web设计模式中享元模式

然后编写一个实现类FlyweightImpl.java来实现接口,并在构造函数中传递一个Color对象。

怎么使用web设计模式中享元模式

在第三步中,我们编写了一个工厂类FlyweightFactory.java,它有一个颜色对象的本地缓存,对于相同的颜色,只保存一个对象。

怎么使用web设计模式中享元模式

彩色辅助Color.java

怎么使用web设计模式中享元模式

最后,编写一个测试应用类FlyweightDemo.java。

怎么使用web设计模式中享元模式

在上面的测试类中,我们分别用两种颜色定义了三个对象。因为具有相同颜色的对象已经被缓存,所以我们的输出结果如下:

输出结果

怎么使用web设计模式中享元模式

“从上面的运行结果中,我们可以看到flyweight0和flyweight1实际上是同一个对象。虽然它们的宽度和高度属性值不同,但它们的底层对应于同一对象本身。这是元分享模式的核心内容。通过共享变量,减少了对象的生成,从而减少了内存的使用。

感谢阅读。这就是“如何在网页设计模式中使用欣赏元模式”的内容。看完这篇文章,相信你对如何在网页设计模式中使用living Meta Pattern有了更深的理解,具体用法还需要实践来验证。在这里,边肖将为您推送更多关于知识点的文章,敬请关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/89359.html

(0)

相关推荐

  • 如何用Python破解wifi密码

    技术如何用Python破解wifi密码如何用Python破解wifi密码,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Python真的是无所不能,原因就是因

    攻略 2021年10月25日
  • message可数吗,news与message的区别

    技术message可数吗,news与message的区别message, newsmessage可数吗。这两个名词都有“消息”的意思,但它们的用法不一样。
    message是个可数名词,指口头、书面、无线电等多种渠道传送的

    生活 2021年10月21日
  • 如何做酸辣汤,上海酸辣汤正宗做法是什么

    技术如何做酸辣汤,上海酸辣汤正宗做法是什么上海的酸辣汤原料如何做酸辣汤:老豆腐1块半,猪血1两,木耳半两,猪肉1两.,竹笋半支,冬菇,葱,姜,蛋,香菜 (够全家吃),水,酱油、淀粉半匙,米酒少许,味精半匙,盐1小匙,白醋

    生活 2021年10月20日
  • 抖音刷点赞刷粉,抖音3元1000粉自助下单网址?

    技术抖音刷点赞刷粉,抖音3元1000粉自助下单网址?抖音刷赞的妙用,抖音刷赞有那些用处,随着抖音的火爆,现在入住抖音的用户那是相当多呀,入住抖音的用户多了,当然抖音内部的竞争也就大了,有部分抖音新人没有人气,没有名气,响

    测评 2021年10月19日
  • 怎么使用jQuery选择器

    技术怎么使用jQuery选择器本篇内容介绍了“怎么使用jQuery选择器”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!先

    攻略 2021年11月18日
  • htmltextarea宽度如何设置(htmltextarea怎么设置高度)

    技术html textarea如何设置大小本篇内容介绍了“html textarea如何设置大小”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔

    攻略 2021年12月13日