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

公司做网站需要多少钱卢松松网站

公司做网站需要多少钱,卢松松网站,wordpress现在还慢吗,织梦wap网站最新学习了刘伟老师的设计模式#xff1a;简单工厂模式#xff0c; 史上最全设计模式导学目录#xff08;完整版#xff09;_刘伟技术博客-CSDN博客 工厂三兄弟之简单工厂模式#xff08;一#xff09;_刘伟技术博客-CSDN博客工厂三兄弟之简单工厂模式#xff08;二简单工厂模式 史上最全设计模式导学目录完整版_刘伟技术博客-CSDN博客 工厂三兄弟之简单工厂模式一_刘伟技术博客-CSDN博客工厂三兄弟之简单工厂模式二_刘伟技术博客-CSDN博客工厂三兄弟之简单工厂模式三_刘伟技术博客-CSDN博客工厂三兄弟之简单工厂模式四_刘伟技术博客-CSDN博客 做一下后面的练习题 练习 使用简单工厂模式设计一个可以创建不同几何形状如圆形、方形和三角形等的绘图工具每个几何图形都具有绘制draw()和擦除erase()两个方法要求在绘制不支持的几何图形时提示一个UnSupportedShapeException。 先分析问题 首先是有图形工具可以创建不同形状工具里面有两个方法绘制daw()和擦除erase()。 首先定义一个抽象类Shape,并针对抽象类Shape定义一个工厂类ShapeFactory package com.pattern.simplefactory;public abstract class Shape {/*** 绘制方法*/abstract void draw();/**** 擦除方法*/protected void erase(){for (int i 0; i 10; i) {System.out.println();}} }定义具体的形状 package com.pattern.simplefactory; /*** 圆形*/ public class ShapeCircular extends Shape{Overridepublic void draw() {int r8;//圆形的半径for (int y 0; y 2 * r; y 2) {//y的步长为2,改变y的步长可以将圆形变成椭圆int x (int)Math.round(r - Math.sqrt(2 * r * y - y * y));int len 2 * (r - x);for (int i 0; i x; i) {System.out.print( );}System.out.print(*);for (int j 0; j len; j) {System.out.print(*);}System.out.println(*);}} }package com.pattern.simplefactory; /*** 方形*/ public class ShapeSquare extends Shape{Overridevoid draw() {int i 5;for (int j 0; j i; j) {for (int k 0; k i; k) {System.out.print( * );}System.out.println();}} }package com.pattern.simplefactory; /*** 三角形*/ public class ShapeTriangle extends Shape{Overridevoid draw() {int i 5;for (int j 0; j i; j) {int spea (i-j);for (int k 0; k spea; k) {System.out.print( );}for (int k 0; k j; k) {System.out.print(*);}for (int k 0; k j-1; k) {System.out.print(*);}System.out.println();}} }然后创建具体的工厂类ShapeFactory,其中如果有不支持的图形就报UnSupportedShapeException错误。: package com.pattern.simplefactory;import java.util.HashMap; import java.util.Map;/*** 图形工厂*/ public class ShapeFactory {private static String Circular Circular;private static String Square Square;private static String Triangle Triangle;public static Shape getShape(String shapeStr){Shape shape null;if(Circular.equals(shapeStr)){shape new ShapeCircular();}else if(Square.equals(shapeStr)){shape new ShapeSquare();}else if(Triangle.equals(shapeStr)){shape new ShapeTriangle();}else{throw new UnSupportedShapeException();}return shape;} }最后定义一个UnSupportedShapeException类 继承RuntimeException package com.pattern.simplefactory;public class UnSupportedShapeException extends RuntimeException{ }最后测试一下 package com.pattern.simplefactory;public class Client {public static void main(String[] args) {//打印方形Shape shape ShapeFactory.getShape(Square);shape.draw();//打印三角形Shape shape1 ShapeFactory.getShape(Triangle);shape1.draw();//打印圆形Shape shape2 ShapeFactory.getShape(Circular);shape2.draw();//擦除shape2.erase();} }最后运行结果 然后再思考一下在工厂里面如果多次调用同一种形状每次会new一个全新的Shape.并且每次创建的Shape本身也并没有什么差别。这里可以用享元模式的思路来做一下改善 这里给一个享元模式入口史上最全设计模式导学目录完整版_刘伟技术博客-CSDN博客 享元模式(Flyweight Pattern)运用共享技术有效地支持大量细粒度对象的复用。系统只使用少量的对象而这些对象都很相似状态变化很小可以实现对象的多次复用。由于享元模式要求能够共享的对象必须是细粒度对象因此它又称为轻量级模式它是一种对象结构型模式。 package com.pattern.simplefactory;import java.util.HashMap; import java.util.Map;/*** 图形工厂*/ public class ShapeFactory {private static String Circular Circular;private static String Square Square;private static String Triangle Triangle;private static MapString,Shape shapeMap new HashMap();public static Shape getShape(String shapeStr){Shape shape null;//享元模式if(shapeMap.containsKey(shapeStr)){shape shapeMap.get(shapeStr);return shape;}if(Circular.equals(shapeStr)){shape new ShapeCircular();}else if(Square.equals(shapeStr)){shape new ShapeSquare();}else if(Triangle.equals(shapeStr)){shape new ShapeTriangle();}else{throw new UnSupportedShapeException();}shapeMap.put(shapeStr, shape);return shape;} }
http://www.dnsts.com.cn/news/132172.html

相关文章:

  • wordpress站点结构机械推广平台有哪些
  • 商标注册名字查询系统官网seo专员
  • 邯郸哪里制作网站请人建网站应注意什么
  • 乐清新闻综合频道烟台网站优化推广
  • 杭州网站建设_数据库开发网站_大数据网站开发seo网站图片优化
  • 网站推广目标关键词网站建设创业书
  • 字体排版设计网站马鞍山 网站建设 有限公司
  • 网站备案号查不到tamed wordpress插件
  • 企业网站建设实例做金融网站违法吗
  • 陕西安康网站建设专业商城网站建设
  • 做网站西安哪家好行业协会网站建设方案书
  • 网站界面设计 考虑因素河南建设人才教育信息网
  • 新郑网站开发北京厦门网站优化
  • 睢宁做网站公司网站项目计划书模板范文
  • 妇幼网站建设ppt网站后台 添加用户
  • 自建网站软件wordpress表单信息在哪里
  • 怎么选一个适合自己的网站做网站推广 seo的
  • 成都哪家网站建设好psd 网站
  • 自己做网站视频教程wordpress 功能介绍
  • 做动态图的网站房地产销售经理职责和工作内容
  • 加强机关网站建设app小游戏开发公司
  • 网站seo关键字wordpress网站秒开
  • 专业网站建设价格最优郑州建网站的好处
  • 徐州cms模板建站广告公司名字起名大全
  • html5微网站模板营销型网站设计内容
  • 胶南市场建设服务中心网站品牌推广公司排名
  • 网站所属权介绍一学一做视频网站
  • 做网站廊坊硬件开发语言有哪些
  • 门户网站定制开发工程竣工验收公示网
  • 北京建设工程建设交易信息网站网站业务怎么做的