黑马程序员技术交流社区

标题: 银行业务调度系统的一点想法 [打印本页]

作者: zl918    时间: 2012-1-8 21:06
标题: 银行业务调度系统的一点想法
看过张老师的银行业务调度视频,其中ServiceWindow类中的start()方法,想直接往start()中赋值,但是switch报错,需要变成final类型,为什么呢?
  1.         public void start(CustomerType type) {
  2.                 Executors.newSingleThreadExecutor().execute(new Runnable() {
  3.                         public void run() {
  4.                                 while (true) {
  5.                                         switch (type) {          //需要将type变为fianl
  6.                                         case COMMON:
  7.                                                 commonService();
  8.                                                 break;
  9.                                         case EXPRESS:
  10.                                                 expressService();
  11.                                                 break;
  12.                                         case VIP:
  13.                                                 vipService();
  14.                                                 break;
  15.                                         }
  16.                                 }
  17.                         }
  18.                 });
  19.         }
复制代码

作者: 张伟    时间: 2012-1-10 17:21
switch (type) ? switch里面不能放type类型,可以放char,int,类型,而这两个类型是final 的。
作者: lvwenwen88    时间: 2012-1-10 19:28
可以放char,int,类型,而这两个类型是final 的。
作者: zl918    时间: 2012-1-14 10:40
lvwenwen88 发表于 2012-1-10 19:28
可以放char,int,类型,而这两个类型是final 的。

type是枚举类型的啊?为什么还要把枚举转换为final呢?
作者: zl918    时间: 2012-1-14 10:40
张伟 发表于 2012-1-10 17:21
switch (type) ? switch里面不能放type类型,可以放char,int,类型,而这两个类型是final 的。 ...

type是枚举类型的啊?为什么还要把枚举转换为final呢?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2