打字猴:1.700458897e+09
1700458897
1700458898 在抽象类中,isAlarm是一个实现方法。其作用是模板方法根据其返回值决定是否要响喇叭,子类可以覆写该返回值,由于H1型号的喇叭是想让它响就响,不想让它响就不响,由人控制,其源代码如代码清单10-10所示。
1700458899
1700458900 代码清单10-10 扩展后的H1悍马
1700458901
1700458902 public class HummerH1Model extends HummerModel{
1700458903
1700458904 private boolean alarmFlag=true;//要响喇叭
1700458905
1700458906 protected void alarm(){
1700458907
1700458908 System.out.println(“悍马H1鸣笛……”);
1700458909
1700458910 }
1700458911
1700458912 protected void engineBoom(){
1700458913
1700458914 System.out.println(“悍马H1引擎声音是这样在……”);
1700458915
1700458916 }
1700458917
1700458918 protected void start(){
1700458919
1700458920 System.out.println(“悍马H1发动……”);
1700458921
1700458922 }
1700458923
1700458924 protected void stop(){
1700458925
1700458926 System.out.println(“悍马H1停车……”);
1700458927
1700458928 }
1700458929
1700458930 protected boolean isAlarm(){
1700458931
1700458932 return this.alarmFlag;
1700458933
1700458934 }
1700458935
1700458936 //要不要响喇叭,是有客户的来决定的
1700458937
1700458938 public void setAlarm(boolean isAlarm){
1700458939
1700458940 this.alarmFlag=isAlarm;
1700458941
1700458942 }
1700458943
1700458944 }
1700458945
1700458946 只要调用H1型号的悍马,默认是有喇叭响的,当然你可以不让喇叭响,通过isAlarm(false)就可以实现。H2型号的悍马是没有喇叭声响的,其源代码如代码清单10-11所示。
[ 上一页 ]  [ :1.700458897e+09 ]  [ 下一页 ]