A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhanqq2010 中级黑马   /  2014-6-19 21:53  /  1414 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

jdk5中出现的枚举不就已经将构造方法私有化了吗?,那张孝祥老师的“交通灯管理系统”中为什么还要手工私有化构造函数?这样不会冲突吗?附上部分代码,请大神帮我解答一下,万分感谢
  1. public enum Lamp {
  2.                         S2N("N2S", "S2W", false), S2W("N2E", "E2W", false), E2W("N2E", "E2W", false), E2S(
  3.                         "W2N", "S2N", false), N2S(null, null, false), N2E(null, null, false), W2E(
  4.                         null, null, false), W2N(null, null, false), S2E(null, null, true), E2N(
  5.                         null, null, true), N2W(null, null, true), W2S(null, null, true);
  6. //私有化构造函数
  7.         private Lamp() {

  8.         }
  9. //私有化构造函数
  10.         private Lamp(String opposite, String next, boolean lighted) {
  11.                 this.opposite = opposite;
  12.                 this.next = next;
  13.                 this.lighted = lighted;
  14.         }
  15.      ...
  16. }
复制代码




5 个回复

倒序浏览
{:3_55:}没看到呢,不懂,回帖赚经验
回复 使用道具 举报
枚举里的构造函数必须私有化的
回复 使用道具 举报
你可以什么都不写,那就是默认的私有,也可以加上private,但是就是不能用public或者其他修饰符
回复 使用道具 举报
你可以什么都不写,那就是默认的私有,也可以加上private,但是就是不能用public或者其他修饰符
回复 使用道具 举报

RE: 请教一个关于枚举的问题

你可以什么都不写,那就是默认的私有,也可以加上private,但是就是不能用public或者其他修饰符
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马