@@ -412,6 +412,21 @@ status open
412
412
ect继承下来的,这也是enum枚举类型对象和普通对象的区别。
413
413
\end_layout
414
414
415
+ \begin_layout Standard
416
+ 注意到,enum对象中的属性,比如SUNDAY也是一个对象,而且是WeekDay类型的对象,我们从反编译后的代码可以看出这一点。因此,SUNDAY这样的属性就有
417
+ name()方法和ordinal()方法。
418
+ \begin_inset Note Note
419
+ status open
420
+
421
+ \begin_layout Plain Layout
422
+ 这里的描述不够清晰,值得商榷
423
+ \end_layout
424
+
425
+ \end_inset
426
+
427
+
428
+ \end_layout
429
+
415
430
\begin_layout Standard
416
431
\begin_inset Flex Notice
417
432
status open
@@ -581,6 +596,17 @@ ordinal:序号,即enum在定义中的序号,默认从0开始依次递增
581
596
定义一个enum,表达三基色(红绿蓝)。
582
597
\end_layout
583
598
599
+ \begin_layout Standard
600
+ \begin_inset Separator plain
601
+ \end_inset
602
+
603
+
604
+ \end_layout
605
+
606
+ \begin_layout Exercise
607
+ 在WeekDay的定义中,SUNDAY是一个字符串,还是一个对象?如果是一个对象,这个对象是什么类型的?
608
+ \end_layout
609
+
584
610
\begin_layout Section
585
611
enum的构造方法
586
612
\end_layout
@@ -800,8 +826,8 @@ cSignal增加了value属性以表明不同颜色交通信号灯所代表的意
800
826
\begin_inset Quotes erd
801
827
\end_inset
802
828
803
- 时,只需要修改TrafficSignal类的定义即可,其他引用TrafficSignal的类都不需要修改,也就是说,我们的代码可以很好的适用未来的变化:用尽量小
804
- 的代价应对未来的需求变化 ,软件的可维护性就大大提高了。
829
+ 或者“hold on” 时,只需要修改TrafficSignal类的定义即可,其他引用TrafficSignal的类都不需要修改,也就是说,我们的代码可以很好的适
830
+ 用未来的变化:用尽量小的代价应对未来的需求变化 ,软件的可维护性就大大提高了。
805
831
\begin_inset Flex Emph
806
832
status open
807
833
@@ -853,7 +879,7 @@ name "exer:定义一个enum-Planet表示太阳系各行星的名称、质量和
853
879
854
880
\end_inset
855
881
856
-
882
+ 通过这个练习,我们可以看到,enum将行星的名称、质量和半径这三个常量组织到一个Planet对象中了。
857
883
\end_layout
858
884
859
885
\begin_layout Standard
@@ -963,7 +989,28 @@ lstparams "caption={EnumInSwitchTest.java},label={EnumInSwitchTest.java}"
963
989
status open
964
990
965
991
\begin_layout Plain Layout
966
- 关于enum的静态导入:在实际使用enum对象的时候,如果我们多次使用了同一个enum对象,可以使用静态导入技术适当简化代码,比如下面这样:
992
+ 关于enum的静态导入
993
+ \begin_inset Index idx
994
+ status open
995
+
996
+ \begin_layout Plain Layout
997
+ 静态导入
998
+ \end_layout
999
+
1000
+ \end_inset
1001
+
1002
+
1003
+ \begin_inset Foot
1004
+ status collapsed
1005
+
1006
+ \begin_layout Plain Layout
1007
+ 注意到,静态导入的对象不能在默认包中,因此必须将TrafficSignal类放到一个包里面。这在实际的项目中一般没有问题,在练习的时候要注意创建一个包来容纳Tr
1008
+ afficSignal类。
1009
+ \end_layout
1010
+
1011
+ \end_inset
1012
+
1013
+ :在实际使用enum对象的时候,如果我们多次使用了同一个enum对象,可以使用静态导入技术适当简化代码,比如下面这样:
967
1014
\end_layout
968
1015
969
1016
\begin_layout Plain Layout
0 commit comments