1.仔细阅读示例: EnumTest.java,运行它,分析运行结果? 你能得到什么结论?你掌握了枚举类型的基本用法了吗?
public class EnumTest { public static void main(String[] args) { Size s=Size.SMALL; Size t=Size.LARGE; //s和t引用同一个对象? System.out.println(s==t); // //是原始数据类型吗? System.out.println(s.getClass().isPrimitive());//判断是否为类包的数据 //从字符串中转换 Size u=Size.valueOf("SMALL"); System.out.println(s==u); //true //列出它的所有值 for(Size value:Size.values()){ System.out.println(value); } } }
第一个判断s和t是否引用同一个对象,第二个判断它是否为类包的数据,第三个t判断s是否等于u,列出它里面的所有元素,所以枚举类型是引用类型,枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象,可以使用“==直接比对枚举变量的值。
2.阅读相应教材,或者使用互联网搜索引擎,弄清楚反码、补码跟原码这几个概念
原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值,
补码的表示方法是:正数的补码就是其本身负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)
反码的表示方法是:正数的反码是其本身负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.
3.Java变量遵循“同名变量的屏蔽原则”,请课后阅读相关资料弄清楚相关知识。
在代码中,第一个value是成员变量,也是全局变量,第二个value是局部变量,局部变量可以覆盖全局变量,在局部使用某个变量的时候JVM会优先找和当前使用位置近的变量定义.
原文:http://www.cnblogs.com/ylx111/p/5966064.html