打字猴:1.700477324e+09
1700477324
1700477325 类图比较简单,非常标准的装饰模式。我们按照故事的情节发展一步一步地实现程序。初期的时候,丑小鸭表现得很另类,叫声不同,外形不同,致使周围的亲戚、朋友都对她鄙视,那我们来建立这个过程,由于丑小鸭的本质就是一个天鹅,那我们就先生成一个天鹅的接口,如代码清单31-7所示。
1700477326
1700477327 代码清单31-7 天鹅接口
1700477328
1700477329 public interface Swan{
1700477330
1700477331 //天鹅会飞
1700477332
1700477333 public void fly();
1700477334
1700477335 //天鹅会叫
1700477336
1700477337 public void cry();
1700477338
1700477339 //天鹅都有漂亮的外表
1700477340
1700477341 public void desAppaearance();
1700477342
1700477343 }
1700477344
1700477345 我们定义了天鹅的行为,都会飞行、会叫,并且可以描述她们漂亮的外表。丑小鸭是一只白天鹅,是”is-a”的关系,也就是需要实现这个接口了,其实现如代码清单31-8所示。
1700477346
1700477347 代码清单31-8 丑小鸭
1700477348
1700477349 public class UglyDuckling implements Swan{
1700477350
1700477351 //丑小鸭的叫声
1700477352
1700477353 public void cry(){
1700477354
1700477355 System.out.println(“叫声是克噜——克噜——克噜”);
1700477356
1700477357 }
1700477358
1700477359 //丑小鸭的外形
1700477360
1700477361 public void desAppaearance(){
1700477362
1700477363 System.out.println(“外形是脏兮兮的白色,毛茸茸的大脑袋”);
1700477364
1700477365 }
1700477366
1700477367 //丑小鸭还比较小,不能飞
1700477368
1700477369 public void fly(){
1700477370
1700477371 System.out.println(“不能飞行”);
1700477372
1700477373 }
[ 上一页 ]  [ :1.700477324e+09 ]  [ 下一页 ]