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

网页网站免费网站建设培训手册

网页网站免费,网站建设培训手册,设计优化怎么收费,做网站一般按什么报价4.4 装饰模式 1.模式定义 不改变现有对象结构的情况下#xff0c;动态地给该对象增加一些职责#xff08;即增加其额外功能#xff09;的模式。 2.模式结构 抽象构件角色 #xff1a;定义一个抽象接口以规范准备接收附加责任的对象。客户端可以方便调用装饰类和被装饰类…4.4 装饰模式 1.模式定义 不改变现有对象结构的情况下动态地给该对象增加一些职责即增加其额外功能的模式。 2.模式结构 抽象构件角色 定义一个抽象接口以规范准备接收附加责任的对象。客户端可以方便调用装饰类和被装饰类。 具体构件角色 实现抽象构件通过装饰角色为其添加一些职责。 抽象装饰角色 继承或实现抽象构件并包含具体构件的实例可以通过其子类扩展具体构件的功能。 具体装饰角色 实现抽象装饰的相关方法并给具体构件对象添加附加的责任。 3.模式原理 在不改变对象本身的基础之上给对象添加或删除行为往往可以通过继承机制或者是关联机制实现 继承机制通过子类对父类的继承重写或添加新的方法来扩展类关联机制将一个类的对象嵌入另一个类的对象之中进而在另一个类中扩展其行为通过递归嵌套实现多层装饰 4.代码模板 抽象装饰类 public class Decorator implements Component {//关联抽象构建private Component component;//构造注入具体构建public Decorator(Component component) {this.component component;}Overridepublic void operation() {component.operation();} }具体装饰类 public class ConcreteDecorator extends Decorator{public ConcreteDecorator(Component component) {super(component);}public void operation() {super.operation();addBehavior();}private void addBehavior() {//新增方法} }5.案例分析 public interface Call {public void callMusic(); }public class Phone implements Call {public Phone() {System.out.println(普通手机);}Overridepublic void callMusic() {System.out.println(来电话了手机发出响声);} }public class Decorator implements Call{private Call call;public Decorator(Call call) {this.call call;}public void setCall(Call call) {this.call call;}Overridepublic void callMusic() {System.out.println(来电话了手机发出响声);} }public class JarPhone extends Decorator {public JarPhone(Call call) {super(call);System.out.println(振动手机);}public void jar() {super.callMusic();System.out.println(振动~~~);} }public class LightPhone extends Decorator{public LightPhone(Call call) {super(call);System.out.println(闪光手机);}public void light() {super.callMusic();System.out.println(闪光~~~);} }public class Main {public static void main(String[] args) {Phone phone new Phone();System.out.println(电话来了);phone.callMusic();System.out.println(————————————————);JarPhone jarPhone new JarPhone(phone);System.out.println(电话来了);jarPhone.jar();System.out.println(————————————————);LightPhone lightPhone new LightPhone(phone);System.out.println(电话来了);lightPhone.light();System.out.println(————————————————);//将闪光手机改装成可以振动且闪光的手机System.out.println(组装手机);lightPhone.light();jarPhone.setCall(lightPhone);jarPhone.jar();} }6.模式优缺点 7.模式使用场景 8.模式应用 IO流中使用InputStream和OutputStream中只提供了简单的读写操作通过装饰模式可以得到具有文件输入输出的FileInputStream等javax.swing中也有大量使用
http://www.w-s-a.com/news/125346/

相关文章:

  • 装饰公司怎么做网站嘉兴网站制作推广
  • 深圳兼职做网站涿州网站制作
  • 能找本地人做导游的网站app模板素材下载免费
  • 网站积分的作用网站开发需要看相关书籍
  • 建设银行总行网站alexa排名与什么有关系
  • 阿里云服务器发布网站收款网站怎么建设
  • 开发东莞网站制作公司做网站优化步骤
  • 网站版权信息的正确写法如何制作网络游戏
  • 郑州移动端网站建设如何在网上推广自己的公司
  • 企业建站源码系统破解网站后台
  • 石家庄网站开发报价企业注册资本代表什么
  • 招商平台公司宁波seo教程推广平台
  • 哪些网站可以做房产推广垂直门户网站都有什么
  • 不得不知道的网站金石项目管理软件
  • 怎么恢复网站数据库网站开发作业代做
  • 哪里建设网站最好用中国第五冶金建设公司医院网站
  • 雄安网建 网站建设订餐网站建设
  • 广州视频网站建站公司网站 体系
  • 青浦门户网站网站推广烟台公司电话
  • 湖北荆门建设银行网站wordpress购物模板下载
  • 学ui+wordpress模板北京推广优化
  • 建分类网站得花多少钱深圳设计网站开发
  • 网站集群建设和网站集约化百度商桥怎么绑定网站
  • 青岛模板网站建设价格网络品牌网站建设
  • 网站建设的几大要素网站的做网站的公司
  • 怎么登陆自己的公司网站垂直电商网站建设
  • 温州微网站制作哪里有许昌网站建设哪家最好
  • 中国中小企业网站官网网页制作工具按其制作方式分 可以分为
  • 做资源下载网站违法吗河南企业做网站
  • 网站开发总体功能设计网站建设 北京昌平