打字猴:1.700478259e+09
1700478259
1700478260
1700478261 图32-4 策略模式实现人生的类图
1700478262
1700478263 这是非常典型的策略模式,没有太多的玄机,它定义了一个工作算法,然后有三个实现类:孩童工作、成年人工作和老年人工作。我们来看代码,首先看抽象工作算法,如代码清单32-19所示。
1700478264
1700478265 代码清单32-19 抽象工作算法
1700478266
1700478267 public abstract class WorkAlgorithm{
1700478268
1700478269 //每个年龄段都必须完成的工作
1700478270
1700478271 public abstract void work();
1700478272
1700478273 }
1700478274
1700478275 无论如何,每个算法都必须实现work方法,完成对工作内容的定义,三个具体的工作算法如代码清单32-20、32-21、32-22所示。
1700478276
1700478277 代码清单32-20 孩童工作
1700478278
1700478279 public class ChildWork extends WorkAlgorithm{
1700478280
1700478281 //小孩的工作
1700478282
1700478283 @Override
1700478284
1700478285 public void work(){
1700478286
1700478287 System.out.println(“儿童的工作是玩耍!”);
1700478288
1700478289 }
1700478290
1700478291 }
1700478292
1700478293 代码清单32-21 成年人工作
1700478294
1700478295 public class AdultWork extends WorkAlgorithm{
1700478296
1700478297 //成年人的工作
1700478298
1700478299 @Override
1700478300
1700478301 public void work(){
1700478302
1700478303 System.out.println(“成年人的工作就是先养活自己,然后为社会做贡献!”);
1700478304
1700478305 }
1700478306
1700478307 }
1700478308
[ 上一页 ]  [ :1.700478259e+09 ]  [ 下一页 ]