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

网站开发修改端口外链在线发布工具

网站开发修改端口,外链在线发布工具,大型门户网站后端,网站网站建设设计公司原型模式 原型模式#xff08;创建型模式#xff09;#xff0c;核心思想就是#xff1a;基于一个已有的对象复制一个对象出来#xff0c;通过复制来减少对象的直接创建的成本。 总结一下#xff0c;原型模式的两种方法#xff0c;浅拷贝只会复制对象里面的基本数据类型…原型模式 原型模式创建型模式核心思想就是基于一个已有的对象复制一个对象出来通过复制来减少对象的直接创建的成本。 总结一下原型模式的两种方法浅拷贝只会复制对象里面的基本数据类型和引用对象的内存地址不会递归地复制引用对象以及引用对象的引用对象。而深拷贝就是会完全拷贝一个新的对象出来。所以深拷贝的操作会比浅拷贝更加耗时性能更差一点。同时浅拷贝的代码写起来也比深拷贝的代码写起来更简单一点。如果咱们拷贝的对象是不可变的也就是说我这个对象只会查看不会增删改那么直接用浅拷贝就好了如果拷贝的对象存在增删改的情况那么就需要使用深拷贝了。总而言之就是要深浅得当根据项目实际情况而定。 代码举例 // 原型接口 interface Shape extends Cloneable {void draw();Shape clone(); }// 具体原型类 - 圆形 class Circle implements Shape {private String color;public Circle(String color) {this.color color;}Overridepublic void draw() {System.out.println(Drawing a circle with color: color);}Overridepublic Shape clone() {return new Circle(color);} }// 具体原型类 - 正方形 class Square implements Shape {private String color;public Square(String color) {this.color color;}Overridepublic void draw() {System.out.println(Drawing a square with color: color);}Overridepublic Shape clone() {return new Square(color);} }// 原型管理器 class ShapeCache {private static MapString, Shape shapeMap new HashMap();public static Shape getShape(String type) {Shape cachedShape shapeMap.get(type);return (Shape) cachedShape.clone();}public static void loadCache() {Circle circle new Circle(red);shapeMap.put(circle, circle);Square square new Square(blue);shapeMap.put(square, square);} }// 示例使用 public class PrototypePatternExample {public static void main(String[] args) {ShapeCache.loadCache();Shape clonedShape1 ShapeCache.getShape(circle);clonedShape1.draw(); // 输出: Drawing a circle with color: redShape clonedShape2 ShapeCache.getShape(square);clonedShape2.draw(); // 输出: Drawing a square with color: blue} }模板模式 模板方法模式也非常简单但是他却是比较重要的在很多开源框架里面都用到了这个模式并且我们在做项目的时候也会经常用到这个模式。这个模板方法模式简单来说就是一句话在父类中定义业务处理流程的框架到子类中去做具体的实现。 代码举例 // 抽象模板类 abstract class Game {abstract void initialize();abstract void startPlay();abstract void endPlay();// 模板方法定义算法框架public final void play() {initialize();startPlay();endPlay();} }// 具体模板类 - 足球游戏 class FootballGame extends Game {Overridevoid initialize() {System.out.println(Football Game Initialized! Start playing.);}Overridevoid startPlay() {System.out.println(Playing football...);}Overridevoid endPlay() {System.out.println(Football Game Finished!);} }// 具体模板类 - 篮球游戏 class BasketballGame extends Game {Overridevoid initialize() {System.out.println(Basketball Game Initialized! Start playing.);}Overridevoid startPlay() {System.out.println(Playing basketball...);}Overridevoid endPlay() {System.out.println(Basketball Game Finished!);} }// 示例使用 public class TemplatePatternExample {public static void main(String[] args) {Game footballGame new FootballGame();footballGame.play();// 输出:// Football Game Initialized! Start playing.// Playing football...// Football Game Finished!System.out.println();Game basketballGame new BasketballGame();basketballGame.play();// 输出:// Basketball Game Initialized! Start playing.// Playing basketball...// Basketball Game Finished!} }策略模式 接着我们来看一下策略模式策略模式呢也是非常简单他就是定义一个主要的接口然后很多个类去实现这个接口比如说我们定义一个文件上传的接口然后阿里云的上传类去实现它腾讯云的上传类也去实现它这样因为都是实现的同一个接口所以上传类之间是可以在代码中互相替换的。 代码举例 // 策略接口 interface Strategy {int doOperation(int num1, int num2); }// 具体策略类 - 加法 class AddStrategy implements Strategy {Overridepublic int doOperation(int num1, int num2) {return num1 num2;} }// 具体策略类 - 减法 class SubtractStrategy implements Strategy {Overridepublic int doOperation(int num1, int num2) {return num1 - num2;} }// 上下文类 class Context {private Strategy strategy;public Context(Strategy strategy) {this.strategy strategy;}public int executeStrategy(int num1, int num2) {return strategy.doOperation(num1, num2);} }// 示例使用 public class StrategyPatternExample {public static void main(String[] args) {Context context new Context(new AddStrategy());int result1 context.executeStrategy(10, 5);System.out.println(10 5 result1); // 输出: 10 5 15context new Context(new SubtractStrategy());int result2 context.executeStrategy(10, 5);System.out.println(10 - 5 result2); // 输出: 10 - 5 5} } 委派模式 委派模式Delegate Pattern又叫委托模式是一种面向对象的设计模式基本作用就是负责任务的调用和分配是一种特殊的静态代理可以理解为全权代理代理模式注重过程而委派模式注重结果委派模式属于行为型模式不属于GOF23种设计模式 代码举例 // 委派接口 interface Printer {void print(); }// 具体委派类 - 打印机A class PrinterA implements Printer {Overridepublic void print() {System.out.println(Printer A is printing.);} }// 具体委派类 - 打印机B class PrinterB implements Printer {Overridepublic void print() {System.out.println(Printer B is printing.);} }// 委派类 class PrinterManager {private Printer printer;public void setPrinter(Printer printer) {this.printer printer;}public void print() {printer.print();} }// 示例使用 public class DelegatePatternExample {public static void main(String[] args) {PrinterManager printerManager new PrinterManager();// 使用打印机APrinterA printerA new PrinterA();printerManager.setPrinter(printerA);printerManager.print(); // 输出: Printer A is printing.System.out.println();// 使用打印机BPrinterB printerB new PrinterB();printerManager.setPrinter(printerB);printerManager.print(); // 输出: Printer B is printing.} } 适配器模式 适配器模式也比较简单核心思想就是是将一个类的接口转换成客户希望的另一个接口讲白了就是通过适配器可以将原本不匹配、不兼容的接口或类结合起来 代码举例 // 目标接口 interface Target {void request(); }// 适配者类 class Adaptee {public void specificRequest() {System.out.println(Specific request from Adaptee.);} }// 适配器类 class Adapter implements Target {private Adaptee adaptee;public Adapter(Adaptee adaptee) {this.adaptee adaptee;}Overridepublic void request() {adaptee.specificRequest();} }// 示例使用 public class AdapterPatternExample {public static void main(String[] args) {Adaptee adaptee new Adaptee();Target adapter new Adapter(adaptee);adapter.request(); // 输出: Specific request from Adaptee.} }
http://www.hkea.cn/news/14531613/

相关文章:

  • 网站建设实践报告绪论软件开发要多少钱
  • 网站开发的经验技巧做网站设计师
  • 住房城乡建设部门户网站烟气脱硫正规网站建设找哪家好
  • 凡科做的网站app广告联盟平台
  • 博达网站建设教程修改wordpress域名
  • 网站做查赚钱佛山市网站公司
  • 湖北省市政工程建设网站h5游戏折扣平台app
  • 做数学题赚钱的网站深圳谷歌优化seo
  • 泰安做网站公司哪家比较好在线图片编辑软件免费版
  • 网站dns设置考研资料找微信hyhyk1推广可以
  • 做厂房的网站自己可做以做网站吗
  • jsp开发的网站网站建设写代码自己怎么创业
  • 仿网站模板商业网站建设平台
  • php网站开发试卷wordpress数据库cpu太高
  • 武夷山景区网站建设特点手机版网站的优势
  • 怎样用ps做网站宁波专门做网站
  • 加速百度对网站文章的收录专注高端品牌网站的设计
  • 成都免费建站网站公告栏设计
  • asp连接数据库做登录网站完整下载修改wordpress登录密码
  • 那个网站有帮人做图的昆明网站建设专家
  • wordpress 新建分类公司seo推广营销网站
  • 公司网站建设需求绍兴专业做网站公司
  • 建设手机移动网站外贸网站平台都有哪些平台
  • 网站页面统计代码网站推广的电子邮件推广
  • 要加强县门户网站的建设管理办法做一个商品网站多少钱
  • 网站建设 新手从怎么做页眉
  • 山东城市建设职业学院教务网网站北京建设部网站官网
  • 自己做网站做淘宝客拍摄网
  • 17做网站广州沙河茶山网站建设公司
  • 沈阳市网站建设黄山风景区门票价格