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

自己做抽奖网站违法吗现在还做响应式网站吗

自己做抽奖网站违法吗,现在还做响应式网站吗,设备网站建设,免费企业推广网站享元模式#xff08;Flyweight#xff09; 运用共享技术有效地支持大量细粒度的对象。 还记得那年夏天一起在作文本上玩过的五子棋吗#xff1f;五子棋是一种两人对弈的纯策略型棋类游戏#xff0c;它起源于中国古代的传统黑白棋种之中的一个#xff0c;不… 享元模式Flyweight          运用共享技术有效地支持大量细粒度的对象。        还记得那年夏天一起在作文本上玩过的五子棋吗五子棋是一种两人对弈的纯策略型棋类游戏它起源于中国古代的传统黑白棋种之中的一个不仅能增强思维能力提高智力并且富含哲理有助于修身养性。                                                    假设我们要做一个五子棋游戏的程序该怎么做呢看看五子棋游戏中的棋子就是“黑子”和“白子”两种类型假设每次都创建一个新的对象实例是不是太消耗系统内存了呢以下就为大家解决这一问题using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Collections;namespace 享元模式 {//抽象棋子类public abstract class AbstractChessman{//棋子坐标protected int x;protected int y;//棋子类别黑|白protected string chess;public AbstractChessman (string chess){this.chess chess;}//点坐标设置public abstract void point(int x,int y);//显示棋子信息public void show(){Console.WriteLine(this.chess (this.x,this.y ));}}//黑色棋子实现public class BlackChessman :AbstractChessman{public BlackChessman(): base(●){Console.WriteLine(--BlackChessman Construction Exec!!!);}public override void point(int x,int y){this.x x;this.y y;this.show();}}//白色棋子实现public class WhiteChessman :AbstractChessman{public WhiteChessman(): base(○){Console.WriteLine(--WhiteChessman Construction Exec!!!);}public override void point(int x, int y){this.x x;this.y y;this.show();}}//创建棋子工厂public class FiveChessmanFactory{//单例模式工厂private static FiveChessmanFactory fiveChessmanFactory new FiveChessmanFactory();//缓存存放共享对象private Hashtable cache new Hashtable();//私有化构造方法private FiveChessmanFactory(){ }//获得单例工厂public static FiveChessmanFactory getInstance(){return fiveChessmanFactory;}public AbstractChessman getChessmanObject(string c){//从缓存中获得棋子对象实例AbstractChessman abstractChessman (AbstractChessman)this.cache[c];if (abstractChessman null){//缓存中没有棋子对象实例信息则创建棋子对象实例并放入缓存switch (c){case B:abstractChessman new BlackChessman();break;case W:abstractChessman new WhiteChessman();break;default:break;}//为防止非法字符的进入返回nullif (abstractChessman !null){cache.Add(c, abstractChessman);}}return abstractChessman;}}class Program{static void Main(string[] args){//创建五子棋工厂FiveChessmanFactory fiveChessmanFactory FiveChessmanFactory.getInstance();//随机数用来生成棋子对象Random random new Random();int radom 0;AbstractChessman abstractChessman null;for (int i 0; i 10; i){radom random.Next(2);switch (radom){case 0:abstractChessman fiveChessmanFactory.getChessmanObject(B);break;case 1:abstractChessman fiveChessmanFactory.getChessmanObject(W);break;}if (abstractChessman !null){//设置棋子位置信息abstractChessman.point(i, random.Next(15));}}}} } 享元模式类图                                         在类图中包括例如以下几个角色        Flyweight抽象享元角色全部详细享元的超类为详细享元类规定出须要实现的公共接口。        ConcreteFlyweight详细享元角色实现抽象享元角色所规定的接口。假设有内含状态则必须负责为内含状态提供存储空间。        FlyweightFactory享元工厂角色负责创建和管理享元角色。必须保证享元对象能够被系统适当地共享。主要长处        1.能够极大降低内存中对象的数量使得同样或相似对象在内存中仅仅保存一份从而能够节约系统资源提高系统性能。        2.享元模式的外部状态相对独立并且不会影响其内部状态从而使得享元对象能够在不同的环境中被共享。主要缺点        1.享元模式使得系统变得复杂须要分离出内部状态和外部状态这使得程序的逻辑复杂化。        2.为了使对象能够共享享元模式须要将享元对象的部分状态外部化而读取外部状态将使得执行时间变长。适用场景        1.当系统中某个对象类型的实例较多的时候。        2. 对象的大部分状态都能够外部化能够将这些外部状态传入对象中。        相关的设计模式        1.组合能够使用享元共享组合中的叶子节点从而提高系统的处理效率。        2.单例在享元中一般都是想享元工厂设置为单例以减少系统使用空间。单例本身就是一种享元单例仅仅有一个对象实例被其它对象所共享。转载于:https://www.cnblogs.com/bhlsheji/p/4209208.html
http://www.zqtcl.cn/news/434193/

相关文章:

  • 亿星网站建设创业网站怎么做
  • 绿韵建设有限公司网站重庆景点分布图
  • 咨询类网站模板wordpress怎样切换语言
  • 大连网站建设与维护题库网站建设目标是
  • 威海网站开发询广西南宁网站运营
  • 网站的素材做logo长沙专业的网站建设企业
  • 网站显示速度的代码是什么情况专门做中式服装平台的网站
  • 驻马店做网站的公司大连网站模板建站
  • aso如何优化网站优化分析软件
  • IT周末做网站违反制度么wordpress 图床 插件
  • 成都网站建设scjsc888因网站建设关闭的公告
  • 唐山公司建设网站十大牌子网
  • 网站开发的选题依据电子商务网站建设内容
  • 中企动力做的网站被百度屏蔽推销网站话术
  • 四川网站制作广告设计自学网教程
  • 做个简单的企业小网站单纯做网站的公司
  • 河北省建设厅官方网站哈尔滨建设工程招聘信息网站
  • 茂名网站制作网页个人博客登录首页
  • 类似qq空间的网站wordpress 简历主题
  • 专业网站运营制作怎么写代码做网站
  • 安徽免费网站制作西安做行业平台网站的公司
  • 我想做服装网站怎么做网页设计优秀案例分析
  • 网站建设技术教程视频wordpress中文模版
  • 高端企业网站 程序纸牌网站建设
  • html制作网站推广最有效的办法
  • 做网站推广的工作内容凡客诚品创始人
  • 网站开发pc端和手机端外贸建设网站公司
  • 长沙哪家网站设计好上海成品网站
  • wordpress商城插件收费哪里可以做网站优化
  • 中国建设银行u盾下载假网站吗wordpress有没有付费