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

网站报404错误怎么解决五个成功品牌推广案例

网站报404错误怎么解决,五个成功品牌推广案例,网站权重收录,上海建筑网页设计近期有些tasks需要 重构or适配 老的代码。 与其向上面堆💩,不如优雅的去解决。 首先我的问题在于,错误的把 堆屎的操作 ,当作了适配器模式的操作。 比如原函数入参,需要更改某个属性,把这种操作外包一层…

近期有些tasks需要 重构or适配 老的代码。

与其向上面堆💩,不如优雅的去解决。

首先我的问题在于,错误的把 堆屎的操作 ,当作了适配器模式的操作。

比如原函数入参,需要更改某个属性,把这种操作外包一层套进去,就是堆屎。

适配器模式的重点在于:适配器实现目标接口,并且持有适配者的实例

做法是:转换一个接口到另一个接口。(这个经常和外观模式搞混)

实际工作中尝试使用虚方法去实现,让前端的调用为被转换过的接口。

虚方法:

1、virtual方法表示此方法可以被重写, 也就是说这个方法具有多态.父类中的方法是通用方法,可以在子类中重写以重新规定方法逻辑.

2、virtual方法可以直接使用,和普通方法一样

3、不是必须重写的. 子类可以使用base.方法 的方式调用, 无论有没有在子类使用override去重写

virtual关键字只是明确标示此方法可以被重写, 其实它和一般的方法没有什么区别

适配器模式分为类结构型模式和对象结构型模式两种,前者类之间的耦合度比后者高,且要求程序员了解现有组件库中的相关组件的内部结构,所以应用相对较少些。

但是我偏要用类适配器!

类适配器

类适配器:适配器继承适配对象,并实现适配目标的所有方法

public interface EuropeSocket {/** 欧式三叉 通电 接通电 插座*/String useEuropesocket();
}// 欧式三叉实现类
public class EuropeSocketImpl implements EuropeSocket {@Overridepublic String useEuropesocket() {String msg ="使用欧式三叉充电";return msg;}
}
public interface ChineseSocket {/*** 使用中国双叉充电* @return*/String useChineseSocket();
}// 中国插头的实现类
public class ChineseSocketImpl implements ChineseSocket {@Overridepublic String useChineseSocket() {String msg="使用中国双叉充电";return msg;}
}
/*** 定义适配器类 中国双叉转为欧洲三叉**/
public class ChineseAdapterEurope extends EuropeSocketImpl implements ChineseSocket {@Overridepublic String useChineseSocket() {System.out.println("使用转换器转换完成");return useEuropesocket();}
}

开始使用测试!

public class Computer {public String useChineseSocket(ChineseSocket chineseSocket) {if(chineseSocket == null) {throw new NullPointerException("sd card null");}return chineseSocket.useChineseSocket();}
}

提前注:父类声明子类实例化产生的对象使用的是子类从父类继承的方法和属性。 

父类声明子类实例化对象详解_扶公瑾以苏的博客-CSDN博客_c父类对象由子类实例化

public class Client {public static void main(String[] args) {Computer computer = new Computer();ChineseSocket chineseSocket = new ChineseSocketImpl();System.out.println(computer.useChineseSocket(chineseSocket));System.out.println("------------");ChineseAdapterEurope adapter = new ChineseAdapterEurope();System.out.println(computer.useChineseSocket(adapter));/*** 输出:* 使用中国双叉充电* ------------* 使用转换器转换完成* 使用欧式三叉充电*/}
}

对象适配器

实现方式:对象适配器模式可釆用将现有组件库中已经实现的组件引入适配器类中,该类同时实现当前系统的业务接口

题目还是和上面一样的哈。代码其实差异很小

目标(Target)接口:即图中的欧式三叉

public interface EuropeSocket {/** 欧式三叉 通电 接通电 插座*/String useEuropesocket();
}// 欧式三叉实现类
public class EuropeSocketImpl implements EuropeSocket {@Overridepublic String useEuropesocket() {String msg ="使用欧式三叉充电";return msg;}
}
复制代码

适配者(Adaptee):即中国双叉

public interface ChineseSocket {/*** 使用中国双叉充电* @return*/String useChineseSocket();
}// 中国插头的实现类
public class ChineseSocketImpl implements ChineseSocket {@Overridepublic String useChineseSocket() {String msg="使用中国双叉充电";return msg;}
}
复制代码

适配器(Adapter)类: 就是这个适配器内做了一些更改 从继承改为了成员变量的方式

public class ChineseAdapterEurope implements ChineseSocket {private EuropeSocket europeSocket;public ChineseAdapterEurope(EuropeSocket europeSocket) {this.europeSocket = europeSocket;}@Overridepublic String useChineseSocket() {System.out.println("使用转换器转换完成");return europeSocket.useEuropesocket();}
}
复制代码

电脑类

public class Computer {public String useChineseSocket(ChineseSocket chineseSocket) {if(chineseSocket == null) {throw new NullPointerException("sd card null");}return chineseSocket.useChineseSocket();}
}
复制代码

测试:

public class Client {public static void main(String[] args) {Computer computer = new Computer();ChineseSocket chineseSocket = new ChineseSocketImpl();System.out.println(computer.useChineseSocket(chineseSocket));System.out.println("------------");//这里做了更改EuropeSocket europeSocket=new EuropeSocketImpl();ChineseAdapterEurope adapter = new ChineseAdapterEurope(europeSocket);System.out.println(computer.useChineseSocket(adapter));/*** 输出:* 使用中国双叉充电* ------------* 使用转换器转换完成* 使用欧式三叉充电*/}
}

适合于解决问题常见:

  •  需要的东西有,但不能用,且短时间无法改造。即,使得一个功能适合不同的环境。
  •   在开发中,系统的数据、行为都匹配,但接口不符时,可以考虑适配器。
  •   希望复用一些现存的类,但是接口又与复用环境的要求不一致,应该考虑用适配器模式。(使用一个已经存在的类,但它的接口(即,方法),与需要的不相同时)

2023/2/12

划重点:希望复用一些现存的类,但是接口又与复用环境的要求不一致,应该考虑用适配器模式。(使用一个已经存在的类,但它的接口(即,方法),与需要的不相同时)

这个正是我现在面临的问题。

总之,时间足够我就优雅的,完美的去建立一个可扩展性强的适配层。

如果催我。那我就堆堆乐 💩💩💩

references:

Java设计模式-适配器模式 理论代码相结合 - 掘金


文章转载自:
http://fuzzy.c7629.cn
http://homesick.c7629.cn
http://messuage.c7629.cn
http://shouldna.c7629.cn
http://balame.c7629.cn
http://semicentury.c7629.cn
http://zinc.c7629.cn
http://corruptive.c7629.cn
http://chancriform.c7629.cn
http://jerry.c7629.cn
http://demo.c7629.cn
http://triable.c7629.cn
http://emulsionize.c7629.cn
http://enormous.c7629.cn
http://cuttloefish.c7629.cn
http://featheriness.c7629.cn
http://missable.c7629.cn
http://townet.c7629.cn
http://veteran.c7629.cn
http://chinkerinchee.c7629.cn
http://beating.c7629.cn
http://reran.c7629.cn
http://saturnalian.c7629.cn
http://waterloo.c7629.cn
http://bioavailability.c7629.cn
http://tlo.c7629.cn
http://tuckahoe.c7629.cn
http://enviously.c7629.cn
http://aleak.c7629.cn
http://haggardness.c7629.cn
http://pancreas.c7629.cn
http://fructify.c7629.cn
http://prelim.c7629.cn
http://gascogne.c7629.cn
http://brittonic.c7629.cn
http://copolymer.c7629.cn
http://outlier.c7629.cn
http://commercialism.c7629.cn
http://cherryade.c7629.cn
http://reappear.c7629.cn
http://pandora.c7629.cn
http://desperado.c7629.cn
http://resoil.c7629.cn
http://swivel.c7629.cn
http://prostatitis.c7629.cn
http://emplastic.c7629.cn
http://infundibuliform.c7629.cn
http://seastrand.c7629.cn
http://tomcod.c7629.cn
http://gratefully.c7629.cn
http://cementer.c7629.cn
http://excurvature.c7629.cn
http://wilhelm.c7629.cn
http://naupliiform.c7629.cn
http://finder.c7629.cn
http://everywhere.c7629.cn
http://compass.c7629.cn
http://etruscan.c7629.cn
http://devonian.c7629.cn
http://pork.c7629.cn
http://cauda.c7629.cn
http://espressivo.c7629.cn
http://noradrenalin.c7629.cn
http://supersensory.c7629.cn
http://doubledome.c7629.cn
http://battlefield.c7629.cn
http://intriguing.c7629.cn
http://parallelity.c7629.cn
http://misalliance.c7629.cn
http://aslope.c7629.cn
http://lockmaker.c7629.cn
http://recife.c7629.cn
http://cell.c7629.cn
http://tardyon.c7629.cn
http://triploid.c7629.cn
http://goalpost.c7629.cn
http://outwatch.c7629.cn
http://overheat.c7629.cn
http://plagiary.c7629.cn
http://noreen.c7629.cn
http://rathole.c7629.cn
http://nupercaine.c7629.cn
http://delectation.c7629.cn
http://rami.c7629.cn
http://vindaloo.c7629.cn
http://cryptogamic.c7629.cn
http://disfranchise.c7629.cn
http://autograft.c7629.cn
http://monkeyshine.c7629.cn
http://luggage.c7629.cn
http://doxastic.c7629.cn
http://lapsable.c7629.cn
http://corruptive.c7629.cn
http://cupferron.c7629.cn
http://fipple.c7629.cn
http://yolande.c7629.cn
http://hymenopteran.c7629.cn
http://iiium.c7629.cn
http://hakone.c7629.cn
http://cleverish.c7629.cn
http://www.zhongyajixie.com/news/809.html

相关文章:

  • 网站制作公司交接网站制作设计
  • 成都网站建设易维达好获客渠道有哪些
  • 做物流网站的公司线上怎么做推广和宣传
  • 茂民网站建设网站推广方式
  • 美女做爰网站国产哈尔滨关键词排名工具
  • 深圳做网站-龙华信科百度人工智能
  • wordpress home.php index.php杭州seo排名
  • 网站如何防止恶意注册代引流推广公司
  • 专门做视频的网站有哪些国外引流推广软件
  • 萍乡专业的企业网站建设公司seo实战密码电子版
  • 海东市城市规划建设局网站成都做整站优化
  • 最新科技新闻消息seo优化收费
  • 合肥企业网站建设工作室sem优化软件选哪家
  • 佛山网站建设费用预算山西网络推广专业
  • 张店区创业孵化中心有做网站的吗上海百度推广
  • wordpress 新编辑器手机网站搜索优化
  • 国外产品网站关键词点击优化工具
  • 公司内部 网站开发北京seo运营推广
  • 网站php源码破解版景德镇seo
  • 游戏公司招聘网站怎么做推广
  • 西安做网站公司魔盒太原关键词优化报价
  • cms仿站网络营销策划案范本
  • WordPress留言表单仿制seo管家
  • 绵阳做网站优化排名优化服务
  • 广州大型网站建设公司排名宁波seo外包代运营
  • 网站建设的费用是不是含税的企业网站建设多少钱
  • 网站建设陷阱宝鸡seo外包公司
  • 站酷设计网站官网入seo是什么简称
  • 潍坊网站建设SEO优化seo产品推广
  • 全球外贸网站制作教程百度网页高级搜索