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

无锡网站建设的公司seo优化是啥

无锡网站建设的公司,seo优化是啥,优化网站浏览量怎么看,深圳市建设平台合成复用原则 也被称为组合复用原则或聚合复用原则。 合成复用原则提倡尽量使用组合或者聚合等关联关系来实现代码复用,而不是通过继承关系来复用代码。组合是一种强的 “拥有” 关系,体现了严格的部分和整体的关系,部分和整体的生命周期一…

合成复用原则

也被称为组合复用原则或聚合复用原则。

合成复用原则提倡尽量使用组合或者聚合等关联关系来实现代码复用,而不是通过继承关系来复用代码。组合是一种强的 “拥有” 关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样;聚合是一种弱的 “拥有” 关系,体现的是整体与部分的关系,部分可以脱离整体而单独存在。

通常类的复用分为两类:合成复用和继承复用。

继承复用虽然有简单和易实现的优点,但它也存在以下缺点:
1.继承复用破坏了类的封装性。因为继承会将父类的实现细节暴露给子类,父类对子类是透明的,所以这种复用又称为“白箱’复用。
2.子类与父类的耦合度高。父类的实现的任何改变都会导致子类的实现发生变化,这不利于类的扩展与维护。
3.它限制了复用的灵活性。从父类继承而来·的实现是静态的,在编译时已经定义,所以在运行时,不可能发生变化。

采用组合或聚合复用时,可以将已有对象纳入新对象中,使其成为新对象的一部分,新对象可以调用已有对象的功能,它有以下优点:

1.灵活性更高:继承是一种静态的复用方式,子类与父类之间的关系在编译时就已经确定,不够灵活。而组合和聚合是在运行时动态地建立对象之间的关系,更具灵活性。例如,在一个图形绘制系统中,有 “图形” 类和 “颜色” 类,如果使用继承,每个具体图形类(如圆形、矩形)都需要继承颜色相关的属性和方法,当需要改变颜色的实现方式时,所有子类都可能受到影响。而使用组合,将 “颜色” 对象作为 “图形” 对象的一个成员变量,每个图形对象可以在运行时动态地设置自己的颜色,更加灵活。
2.避免类层次结构的复杂性:过度使用继承会导致类层次结构变得复杂,难以理解和维护。如果一个类继承了多个父类,或者继承层次过深,代码的可读性和可维护性都会降低。而组合和聚合可以将不同的功能模块组合在一起,每个模块相对独立,降低了系统的复杂度。
3.可维护性好:当被复用的模块发生变化时,由于组合和聚合关系中,对象之间是相对独立的,这种变化对其他模块的影响较小。而在继承关系中,父类的修改可能会导致子类的行为发生变化,需要对子类进行相应的修改,增加了维护成本。

案例:图形有各种形状,我们给其中部分涂上阴影,如果使用继承复用,会产生很多子类,如果又有新的形状,又需要定义新的类,而如果将继承复用改为聚合复用,会简单很多。以下是案例示例

//定义一个图形
public class Shape {public void draw(){System.out.println("绘制图形");}
}//定义圆形继承Shape
public class Circle extends Shape{@Overridepublic void draw() {System.out.println("绘制圆形");}
}//定义矩形,继承Shape
public class Rectangle extends Shape{@Overridepublic void draw() {System.out.println("绘制矩形");}
}
//添加阴影效果
class ShadowDecorator {private Shape shape;public ShadowDecorator(Shape shape) {this.shape = shape;}public void draw() {shape.draw();System.out.println("添加阴影效果");}
}
public class Main {public static void main(String[] args) {Shape circle = new Circle();ShadowDecorator circleWithShadow = new ShadowDecorator(circle);Shape rectangle = new Rectangle();ShadowDecorator rectangleWithShadow = new ShadowDecorator(rectangle);circle.draw();circleWithShadow.draw();rectangle.draw();rectangleWithShadow.draw();}
}

运行结果

http://www.dtcms.com/wzjs/130135.html

相关文章:

  • 网站导航页面设计搜索大全引擎入口网站
  • 网站建设信息安全要求app开发定制
  • 网站怎么做seo关键词百度会员登录入口
  • 视频 播放网站怎么做如何做网页设计
  • wordpress注册没反应企业网站的优化建议
  • 在川航网站购票后怎么做小吃培训
  • 高端品牌网站建设方案做网络营销推广的公司
  • 长安营销型网站建设b站推广网站2024mmm
  • ppt怎么做 pc下载网站seo优化推荐
  • 网站开发转软件开发中国网络营销网
  • 做网站的开发工具如何建立个人网址
  • 网站转移权重系统优化助手
  • 湛江专业官网建站seo网站优化专家
  • 网上购物网站制作网站开发技术有哪些
  • 达日网站建设小程序开发一个多少钱啊
  • 帝国cms制作网站地图优化大师班级
  • 免费建站哪家好拉新推广怎么做代理
  • 靖江网站推广seo整站优化服务教程
  • 设计师网站家装培训心得体会800字
  • wordpress怎样电影导航seo是啥意思
  • 网站建设公司转型做什网络营销的八大职能
  • 四川省红鱼洞水库建设管理网站seo推广的网站和平台有哪些
  • 盐城建设公司网站万秀服务不错的seo推广
  • 我想做个网站 详解怎么做黑科技引流软件是真的吗
  • 网站开发创建画布域名在线查询
  • 交流平台网站怎么做不了网站开发的步骤
  • 太原市建设委员会官方网站建站工具
  • 帮别人做钓鱼网站 公安福州专业的seo软件
  • 湖南住房城乡建设部网站可以推广赚钱的软件
  • 产品素材网站seo快速排名优化方法