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

有没有帮忙做网站怎么制作网站平台

有没有帮忙做网站,怎么制作网站平台,无域名公司注册,小说网站建设详细流程01.如果接到一个任务,要求设计不同型号的悍马车 02.设计一个悍马车的抽象类(模具,车模) public abstract class HummerModel {/** 首先,这个模型要能够被发动起来,别管是手摇发动,还是电力发动…

01.如果接到一个任务,要求设计不同型号的悍马车
在这里插入图片描述
02.设计一个悍马车的抽象类(模具,车模)

public abstract class HummerModel {/** 首先,这个模型要能够被发动起来,别管是手摇发动,还是电力发动,反正* 是要能够发动起来,那这个实现要在实现类里了*/public abstract void start(); //能发动,那还要能停下来,那才是真本事public abstract void stop(); //喇叭会出声音,是滴滴叫,还是哔哔叫public abstract void alarm(); //引擎会轰隆隆的响,不响那是假的public abstract void engineBoom(); //那模型应该会跑吧,别管是人推的,还是电力驱动,总之要会跑public abstract void run(); 
} 

03.具体不同版本的悍马,这个是抽象类的具体子类

H1 型号悍马的定义如下:

public class HummerH1Model extends HummerModel { @Override public void alarm() { System.out.println("悍马H1鸣笛..."); } @Overridepublic void engineBoom() { System.out.println("悍马H1引擎声音是这样在..."); } @Overridepublic void start() { System.out.println("悍马H1发动..."); }@Overridepublic void stop() { System.out.println("悍马H1停车..."); } /** 这个方法是很有意思的,它要跑,那肯定要启动,停止了等,也就是要调其他方法*/@Overridepublic void run() { //先发动汽车this.start(); //引擎开始轰鸣this.engineBoom(); //然后就开始跑了,跑的过程中遇到一条狗挡路,就按喇叭this.alarm(); //到达目的地就停车this.stop(); } 
} 

然后看悍马 H2 型号的实现:

public class HummerH2Model extends HummerModel { @Overridepublic void alarm() { System.out.println("悍马H2鸣笛..."); } @Overridepublic void engineBoom() { System.out.println("悍马H2引擎声音是这样在..."); } @Overridepublic void start() { System.out.println("悍马H2发动..."); } @Overridepublic void stop() { System.out.println("悍马H1停车..."); } /** H2要跑,那肯定要启动,停止了等,也就是要调其他方法*/@Overridepublic void run() { //先发动汽车this.start(); //引擎开始轰鸣this.engineBoom(); //然后就开始跑了,跑的过程中遇到一条狗挡路,就按喇叭this.alarm(); //到达目的地就停车this.stop(); } 
}

然后程序写到这里,你就看到问题了,run 方法的实现应该在抽象类上(子类改写的都一样),不应该在实现类上,好,我们修改一下类图和实现:
在这里插入图片描述

就把 run 方法放到了抽象类中,那代码也相应的改变一下,先看 HummerModel.java:

04.修改后的抽象类

public abstract class HummerModel { /** 首先,这个模型要能够被发动起来,别管是手摇发动,还是电力发动,反正* 是要能够发动起来,那这个实现要在实现类里了*/public abstract void start(); //能发动,那还要能停下来,那才是真本事public abstract void stop(); //喇叭会出声音,是滴滴叫,还是哔哔叫public abstract void alarm(); //引擎会轰隆隆的响,不响那是假的public abstract void engineBoom(); //那模型应该会跑吧,别管是人退的,还是电力驱动,总之要会跑public void run() { //先发动汽车this.start(); //引擎开始轰鸣this.engineBoom(); //然后就开始跑了,跑的过程中遇到一条狗挡路,就按喇叭this.alarm(); //到达目的地就停车this.stop(); } 
}

05.修改后的抽象类的子类:

public class HummerH1Model extends HummerModel { @Override public void alarm() { System.out.println("悍马H1鸣笛..."); } @Overridepublic void engineBoom() { System.out.println("悍马H1引擎声音是这样在..."); } @Overridepublic void start() { System.out.println("悍马H1发动..."); }@Overridepublic void stop() { System.out.println("悍马H1停车..."); } } 
public class HummerH2Model extends HummerModel { @Overridepublic void alarm() { System.out.println("悍马H2鸣笛..."); } @Overridepublic void engineBoom() { System.out.println("悍马H2引擎声音是这样在..."); } @Overridepublic void start() { System.out.println("悍马H2发动..."); } @Overridepublic void stop() { System.out.println("悍马H2停车..."); } }

06.运行程序
在这里插入图片描述

public class Client { public static void main(String[] args) { //客户开着H1型号,出去遛弯了HummerModel h1 = new HummerH1Model(); h1.run(); //汽车跑起来了;//客户开H2型号,出去玩耍了HummerModel h2 = new HummerH2Model(); h2.run(); } 
}

在这里插入图片描述

07.客户只要在 run 的过程中,听到或看都成了呀,暴露那么多的方法干啥?把抽象方法保护起来
在这里插入图片描述
把抽象类上的四个方法设置为 protected 访问权限,好了,既然客户不关心这几个方法,而且这四个方法都是由子类来实现的,那就设置成 protected 模式。咦~,那还有个缺陷,run 方法既然子类都不修改,那是不是可以设置成 final 类型呢?是滴是滴,类图如下:
在这里插入图片描述

public abstract class HummerModel { /** 首先,这个模型要能够被发动起来,别管是手摇发动,还是电力发动,反正* 是要能够发动起来,那这个实现要在实现类里了*/protected abstract void start(); //能发动,那还要能停下来,那才是真本事protected abstract void stop(); //喇叭会出声音,是滴滴叫,还是哔哔叫protected abstract void alarm(); //引擎会轰隆隆的响,不响那是假的protected abstract void engineBoom(); //那模型应该会跑吧,别管是人退的,还是电力驱动,总之要会跑final public void run() { //先发动汽车this.start(); //引擎开始轰鸣this.engineBoom(); //然后就开始跑了,跑的过程中遇到一条狗挡路,就按喇叭this.alarm(); //到达目的地就停车this.stop(); } 
} 

大家请看这个 run 方法,他定义了调用其他方法的顺序,并且子类是不能修改的,这个叫做模板方法;start、stop、alarm、engineBoom 这四个方法是子类必须实现的,而且这四个方法的修改对应了不同的类,这个叫做基本方法,基本方法又分为三种:在抽象类中实现了的基本方法叫做具体方法;在抽象类中没有实现,在子类中实现了叫做抽象方法,我们这四个基本方法都是抽象方法,由子类来实现的;还有一种叫做钩子方法,

“客户提出新要求了,那个喇叭想让它响就响,你看你设计的模型,车子一启动,喇叭就狂响,赶快修改一下”,确实是设计缺陷,呵呵,不过是我故意的,那我们怎么修改呢?看修改后的类图:

在这里插入图片描述

http://www.yidumall.com/news/383.html

相关文章:

  • 苏州网站公安备案设计网站接单
  • 手机网站的建设北京谷歌seo
  • 全椒有做网站的吗wifi优化大师下载
  • 卡盟网站模板百度推广代理加盟
  • 建设网站的申请信用卡吗百度收录怎么查询
  • wordpress 自建页面无锡网站建设优化公司
  • 国内好的crm系统北京seo怎么优化
  • wap网站制作app百度客服联系方式
  • wap网站的未来搜索引擎优化seo公司
  • 宜兴市的城乡建设管理局网站游戏推广公司怎么接游戏的
  • wordpress 最好的插件seo优化一般包括
  • 不是固定ip如何做网站网站备案是什么意思
  • 津做网站网络营销的基本方法
  • 上海公司网站公安备案查询百度推广登录后台登录入口
  • 怎样创建自己公司的网站优化网络推广外包
  • 自己电脑如何做网站服务器cms网站
  • 网站建设公司有多少钱站长统计免费下载
  • 计算机关于网站开发的证书站长之家最新域名查询
  • 做网站界面尺寸优化seo排名
  • 企业网站程序源码seo优化网站
  • 今天石家庄出什么事了长沙企业seo服务
  • 大红门桥做网站最近10条重大新闻
  • wordpress开发视频网站模板sem是什么?
  • 做3d教学网站简单免费制作手机网站
  • xiu主题做的网站微信营销方案
  • 网站权重优化方式只需要手机号的广告
  • 哪些网站专门做细胞的网站建设一条龙
  • 课程设计做淘宝网站的目的软文案例大全300字
  • 化妆品企业网站建设开网店哪个平台靠谱
  • 飞机选做网站信息流广告投放平台