java中的动手动脑】的更多相关文章

1.关于构造函数的问题 为什么上面的代码不能通过编译? 因为当你没有定义构造函数时,java编译器在编译时会自动生成一个无参的构造函数,上面的代码就可以进行执行了.但是当你顶一个构造函数时,编译器将不会在自动生成一个无参的构造函数,所以上述代码不会通过编译. 2.静态初始化块的问题 class Root { static{ System.out.println("Root的静态初始化块"); } { System.out.println("Root的普通初始化块")…
JAVA课后作业——动手动脑 一:阅读并运行示例PassArray.java,观察并分析程序输出的结果,小结,然后与下页幻灯片所讲的内容进行对照. 1.源代码 // PassArray.java // Passing arrays and individual array elements to methods //引用传递和按值传递 public class PassArray { public static void main(String[] args) { int a[] = { 1,…
问题一:关于以下的代码为什么会产生错误的问题的简单分析. 第一个动手动脑提供了一下的代码,可以发现,在Foo的这个类中只定义了一个Foo(int)类型的构造函数,在之前的学习工程中,我们并没有接触到java的构造函数的声明过程,因此,在类中没有书写构造函数的方法的时候,编译器默认继承Object类,并在编译的时候会产生一个参数为空的构造函数,然而在定义的Foo这个类的时候,给予了一个Foo(int)类型的构造方法,所以在上述Test的调用过程中,obj1并不能够调用到new Foo()这个构造函…
1 运行 TestInherits.java 示例,观察输出,注意总结父类与子类之间构造方法的调用关系修改Parent构造方法的代码,显式调用GrandParent的另一个构造函数,注意这句调用代码是否是第一句,影响重大! 代码如下 package testInherits; class Grandparent { public Grandparent() { System.out.println("GrandParent Created."); } public Grandparen…
---恢复内容开始--- 动手动脑: 1:仔细阅读示例:EnumTest.java,运行它,分析运行结果 结果 :枚举类型是引用类型!枚举类型不属于原始数据类型,它的每个具体指都引用一个特定的对象.相同的值则引用同一个对象. 可以使用“==”和equals()方法直接比对枚举变量的值.换句话说,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的. 2:原码.反码.补码 定义:原码:原码表示法是机器数的一种简单的表示法.其符号位用0表示正号,用1表示负号,数值一般用二进制形式表示…
动手动脑1:枚举变量   运行EnumTest.java package test2; 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().isPrimit…
根据ppt所给的例子,运行的结果如下所示: ppt中出现的第二个动手动脑如下: 代码如下: 其运行结果如下: 作出简单的分析如下:有点类似于if 和else的关系,总是对应try和catch同层中的异常 ppt中动手动脑第三个问题: 代码如下所示: 得到的结果如下: 可以看出结果是根据最近抛出的错误相匹配的,而与嵌套的关系并不大,程序会捕捉最先抛出的错误 动手动脑在ppt中出现的第四个: 文件的代码如下所示: 执行结果如下所示: 根据图中的执行顺序可知道: 异常的错误在执行的过程之中符合嵌套的规…
仔细阅读示例:EnumTest.Java,运行它,分析运行结果? 你能得到什么结论?你掌握了枚举类型的基本用法了吗? 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.g…
1.枚举类型 它的每个具体值都引用一个特定的对象.相同的值则引用同一个对象. 枚举类型不是java原有数据类型 2.为什么double类型的数值进行运算得不到“数学上精确”的结果? 我们给出的数值,在大多数情况下需要比64bit更多的位数才能准确表示出来(甚至是需要无穷多位),而double类型的数值只有64bit,后面舍去的位数一定会带来误差,无法得到“数学上精确”的结果. 3. 第一行输出X+Y=100200,第二行输出300=X+Y. java中的加号有时是连接符,有时是运算符: 1:当左…
1.请运行以下示例代码StringPool.java,查看其输出结果.如何解释这样的输出结果?从中你能总结出什么? 答:在Java中,内容相同的字串常量(“Hello”)只保存一份以节约内存,所以s0,s1,s2实际上引用的是同一个对 象.编译器在编译s2一句时,会去掉“+”号,直接把两个字串连接起来得一个字串(“Hello”).这种优化工作由Java 编译器自动完成.当直接使用new关键字创建字符串对象时,虽然值一致(都是“Hello”),但仍然是两个独立的对象. 请运行以下示例代码,查看其输…