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

郑州专业网站制作的公司哪家好商城型网站建设代理加盟

郑州专业网站制作的公司哪家好,商城型网站建设代理加盟,网页界面设计调查问卷,php软件网站建设1. 请解释建造者模式#xff08;Builder Pattern#xff09;及其应用场景。 答案#xff1a; 建造者模式用于创建一个复杂的对象#xff0c;同时允许用户只通过指定复杂对象的类型和内容就能构建它们#xff0c;隐藏了复杂的构建逻辑。 示例#xff1a; public class C…1. 请解释建造者模式Builder Pattern及其应用场景。 答案 建造者模式用于创建一个复杂的对象同时允许用户只通过指定复杂对象的类型和内容就能构建它们隐藏了复杂的构建逻辑。 示例 public class Car {private String engine;private String wheels;private String color;public Car(String engine, String wheels, String color) {this.engine engine;this.wheels wheels;this.color color;}Overridepublic String toString() {return Car{ engine engine \ , wheels wheels \ , color color \ };} }public class CarBuilder {private String engine;private String wheels;private String color;public CarBuilder setEngine(String engine) {this.engine engine;return this;}public CarBuilder setWheels(String wheels) {this.wheels wheels;return this;}public CarBuilder setColor(String color) {this.color color;return this;}public Car build() {return new Car(engine, wheels, color);} }// 使用 Car car new CarBuilder().setEngine(V8).setWheels(Alloy).setColor(Red).build(); System.out.println(car);应用场景 当对象的构建过程复杂且需要逐步设置多个属性时。当对象的构建逻辑可能变化时使用建造者模式可以灵活调整。 2. 请解释适配器模式Adapter Pattern及其应用场景。 答案 适配器模式用于将一个类的接口转换为客户期望的另一个接口从而使原本不兼容的接口能够一起工作。 示例 public interface MediaPlayer {void play(String audioType, String fileName); }public interface AdvancedMediaPlayer {void playVlc(String fileName);void playMp4(String fileName); }public class VlcPlayer implements AdvancedMediaPlayer {Overridepublic void playVlc(String fileName) {System.out.println(Playing VLC file: fileName);}Overridepublic void playMp4(String fileName) {throw new UnsupportedOperationException();} }public class Mp4Player implements AdvancedMediaPlayer {Overridepublic void playVlc(String fileName) {throw new UnsupportedOperationException();}Overridepublic void playMp4(String fileName) {System.out.println(Playing MP4 file: fileName);} }public class MediaAdapter implements MediaPlayer {private AdvancedMediaPlayer advancedMediaPlayer;public MediaAdapter(String audioType) {if (audioType.equalsIgnoreCase(vlc)) {advancedMediaPlayer new VlcPlayer();} else if (audioType.equalsIgnoreCase(mp4)) {advancedMediaPlayer new Mp4Player();}}Overridepublic void play(String audioType, String fileName) {if (audioType.equalsIgnoreCase(vlc)) {advancedMediaPlayer.playVlc(fileName);} else if (audioType.equalsIgnoreCase(mp4)) {advancedMediaPlayer.playMp4(fileName);}} }// 使用 MediaPlayer player new MediaAdapter(vlc); player.play(vlc, sample.vlc);应用场景 当需要将第三方库或遗留代码集成到现有系统中时。当需要扩展系统的功能但不想修改现有代码时。 3. 请解释代理模式Proxy Pattern及其应用场景。 答案 代理模式提供了一种代理对象该对象内部含有对真实对象的引用通过代理对象来间接访问真实对象从而在不改变真实对象代码的情况下添加一层间接层来控制对真实对象的访问。 示例 public interface Image {void display(); }public class RealImage implements Image {private String fileName;public RealImage(String fileName) {this.fileName fileName;loadFromDisk(fileName);}private void loadFromDisk(String fileName) {System.out.println(Loading fileName);}Overridepublic void display() {System.out.println(Displaying fileName);} }public class ProxyImage implements Image {private RealImage realImage;private String fileName;public ProxyImage(String fileName) {this.fileName fileName;}Overridepublic void display() {if (realImage null) {realImage new RealImage(fileName);}realImage.display();} }// 使用 Image image new ProxyImage(test.jpg); image.display();应用场景 当需要延迟加载资源时如图片。当需要控制对对象的访问时如权限检查。 4. 请解释模板方法模式Template Method Pattern及其应用场景。 答案 模板方法模式定义了一个操作中的算法骨架将一些步骤延迟到子类中实现。模板方法使得子类可以在不改变算法结构的情况下重新定义算法的某些步骤。 示例 public abstract class Game {protected abstract void initialize();protected abstract void startPlay();protected abstract void endPlay();public final void play() {initialize();startPlay();endPlay();} }public class Cricket extends Game {Overrideprotected void initialize() {System.out.println(Cricket game initialization);}Overrideprotected void startPlay() {System.out.println(Cricket game started);}Overrideprotected void endPlay() {System.out.println(Cricket game finished);} }public class Football extends Game {Overrideprotected void initialize() {System.out.println(Football game initialization);}Overrideprotected void startPlay() {System.out.println(Football game started);}Overrideprotected void endPlay() {System.out.println(Football game finished);} }// 使用 Game game new Cricket(); game.play();应用场景 当多个子类共享相同的算法结构但某些步骤需要根据子类不同而变化时。当需要定义算法的骨架但允许子类灵活实现某些步骤时。 5. 请解释门面模式Facade Pattern及其应用场景。 答案 门面模式提供了一个统一的高层接口用于访问子系统中的一群接口。它定义了一个高层接口让子系统更容易使用。 示例 public class SubSystemA {public void methodA() {System.out.println(SubSystemA methodA);} }public class SubSystemB {public void methodB() {System.out.println(SubSystemB methodB);} }public class SubSystemC {public void methodC() {System.out.println(SubSystemC methodC);} }public class Facade {private SubSystemA a;private SubSystemB b;private SubSystemC c;public Facade() {a new SubSystemA();b new SubSystemB();c new SubSystemC();}public void operation() {a.methodA();b.methodB();c.methodC();} }// 使用 Facade facade new Facade(); facade.operation();应用场景 当需要简化一个复杂子系统的使用时。当需要提供一个统一的接口隐藏子系统的复杂性时。
http://www.hkea.cn/news/14532163/

相关文章:

  • 微信上怎么做网站链接wordpress如何上传视频
  • 做物流哪个网站推广好惠州网站建设选惠州邦
  • 陕西省西安市制作网站上传设计作品集的网站
  • 网站开发岗位实际情况crm客户管理系统简介
  • 网站flash音乐播放器济南家居行业网站开发
  • 网站分辨率公众号首图制作网站
  • 什么叫网站优化关键词代发包收录
  • 企业网站托管方式wordpress左上角logo
  • 用dw做网站怎么添加背景图片重庆做企业网站设计的公司
  • 网站后台登陆破解网站跳出率怎么算
  • 三星网站建设内容视频直播系统开发网站建设
  • 自己做的网站出现iis7昆明凡科建站多少钱
  • 网站设计想法显示佣金的网站是怎么做的
  • 免费追剧网站网站建设3d插件
  • 网站建立网络优化wordpress 登陆 代码
  • 做二手车网站需要什么做网站哪个最好
  • 网站top排行榜flash做网站的论文
  • 肥乡邯郸做网站护肤品网站制作 网新科技
  • 建设工程资料下载网站基于站点的网络营销方法
  • 模板的网站都有哪些南沙企业网站建设
  • 门户网站是内网还是外网用dw做音乐网站模板
  • 东莞网站制作外包外贸网站做几种产品
  • 企业信息公开网站华为建站模板
  • 网站排名优化服务商东莞建筑企业招聘
  • 网站建设科网站建设主机类型怎么选
  • 大家称赞的网站建设萝岗网站建设
  • 离退休工作网站建设方案百度电脑版入口
  • 网站收录降低wordpress博客站点地图
  • 谁帮58同城做的网站吗公司多个门户是做二级域名还是做多个网站
  • 不备案网站怎么做淘宝客深圳市网站建设制作设计平台