java动手动脑

Posted yulixiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java动手动脑相关的知识,希望对你有一定的参考价值。

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会优先找和当前使用位置近的变量定义.

 


以上是关于java动手动脑的主要内容,如果未能解决你的问题,请参考以下文章

JAVA09异常处理之动手动脑问题

java动手动脑08

Java 7 动手动脑

java09动手动脑

Java03-动手动脑

JAVA动手动脑