当前位置: 首页 > wzjs >正文

泸州做网站的公司seo搜索引擎优化期末考试

泸州做网站的公司,seo搜索引擎优化期末考试,做网站营业范围,公司网站域名 优帮云JAVA设计模式——(五)享元模式(Flyweight Pattern) 概念理解实现创建内部状态定义享元工厂测试 适用性 概念 使共享对象可以有效的支持大量的细粒度对象。主要采用池技术实现。 理解 享元模式主要解决大量对象的共享&#xff0…

JAVA设计模式——(五)享元模式(Flyweight Pattern)

  • 概念
  • 理解
  • 实现
    • 创建内部状态
    • 定义享元工厂
    • 测试
  • 适用性

概念

使共享对象可以有效的支持大量的细粒度对象。主要采用池技术实现。

理解

享元模式主要解决大量对象的共享,实现内部对象的状态一致性,和外部状态对内部状态的使用。简单理解就是,在JAVA的基础数据类型中,String、Integer、Character等类型均会在创建时缓存一定范围的数据,较少创建和销毁对象花费的时间。

所以,该模式主要涉及以下部分:内部状态、外部状态、外部状态转换为内部状态的工厂、利用外部状态的客户端。

实现

创建内部状态

定义团队抽象类:

package cn.sh.designepattern;/** 定义团队抽象类* @Author song* @Version 0.0.1* @Date 2025/4/24 14:23* @Contact 643947568@qq.com*/
public abstract class Team {String name;String type;public Team(String name, String type) {this.name = name;this.type = type;}public abstract void attendCompetition();
}

定义内部状态具体实现:

package cn.sh.designepattern;/*** @Author song* @Version 0.0.1* @Date 2025/4/24 14:26* @Contact 643947568@qq.com*/
public class BasketballTeam extends Team{public BasketballTeam(String name, String type) {super(name, type);}@Overridepublic void attendCompetition() {System.out.println("篮球队参赛");}
}
package cn.sh.designepattern;/*** @Author song* @Version 0.0.1* @Date 2025/4/24 14:26* @Contact 643947568@qq.com*/
public class FootballTeam extends Team{public FootballTeam(String name, String type) {super(name, type);}@Overridepublic void attendCompetition() {System.out.println("足球队参数");}
}

定义享元工厂

package cn.sh.designepattern;import java.util.HashMap;
import java.util.Map;/*** @Author song* @Version 0.0.1* @Date 2025/4/24 14:29* @Contact 643947568@qq.com*/
public class TeamFactory {private Map<String, Team> map = new HashMap<>();public void putTeam(Team team) {if (!map.containsKey(team.name)) {map.put(team.name, team);}}public Team getTeam(String name) {return map.get(name);}}

测试

package cn.sh.designepattern;/*** @Author song* @Version 0.0.1* @Date 2025/4/24 10:47* @Contact 643947568@qq.com*/
public class Main {public static void main(String[] args) {Team footballTeam = new FootballTeam("足球队", "足球队");Team basketballTeam = new BasketballTeam("篮球队", "篮球队");TeamFactory teamFactory = new TeamFactory();teamFactory.putTeam(footballTeam);teamFactory.putTeam(basketballTeam);teamFactory.getTeam("足球队").attendCompetition();teamFactory.getTeam("篮球队").attendCompetition();}
}

适用性

享元模式可以通过缓存常用的对象在内存中,以节省对象的创建和销毁的时间,从而提高系统的加载速度。

不过缓存太多的对象会导致内存的大量占用,还需要视实际情况而定。

http://www.dtcms.com/wzjs/432720.html

相关文章:

  • 基础网站建设公司常用的网络推广方式有哪些
  • 郴州建设工程信息网站seo推广宣传
  • 上海青浦房地产网站建设免费涨1000粉丝网站
  • 成都h5网站建设百度引擎入口
  • 晋城企业网站建设公司重庆seo扣费
  • 租二级目录做网站南京网站设计公司大全
  • 游戏直播网站怎么做网站seo优化方案
  • 外贸自己做网站网站查询域名ip
  • 做网站和推广找哪家好商城推广
  • 百度收录提交之后如何让网站更快的展示出来免费推广网站大全
  • 北京商业网站建设关键词优化seo公司
  • 免费看舆情网站专业seo网络营销公司
  • 如何用 python 做网站百度提交入口地址在哪
  • icp网站备案查询查域名的网址
  • 为政府做网站的公司百度知道下载
  • 洛阳网站改版维护公司怎么投放网络广告
  • 河北手机网站建设云南新闻最新消息今天
  • 二维码的网站如何做seo推广技术培训
  • 微网站自己怎么做的百度人工在线客服
  • 四川成都私人网站建设南京seo外包平台
  • 微网站和h5有什么区别免费的seo优化工具
  • 网站搭建流程负责人黄页网站推广服务
  • app开发制作网站平台软文推广文章范文
  • 商务网站建设策划书的格式百度在线翻译
  • 买高端品牌网站建设百度竞价效果怎么样
  • 网站更改域名农村电商平台有哪些
  • 哈尔滨 建设网站 科技百度用户服务中心官网
  • 学做网站的步骤百度做网站推广电话
  • 整形医院网站建设如何提高百度搜索排名
  • 谷歌网站怎么做外链新冠咳嗽一般要咳多少天