返回列表 发帖
(1) 1.5.4节 P15

直接出现环境变量“JAVA_HOME”
前文中并没有提到,这样似乎对初学者不太友好
(2) 1.6.1节 P16
提到“最简单的java程序”,是一个空类,可以通过javac命令编译
是不是可以补充一下(sun JDK):空文件也可以编译通过,只是不会生成字节码,执行时得到如下错误提示 Exception in thread "main" java.lang.NoClassDefFoundError: 类名
(3) 3.2.3节 表3.1 java关键字 P47
vlass改为class


(4)
2.1.2节 P27
直到型循环:表示从结构入口处直接执行循环体,在循环终端出判断条件,如果条件不满足,返回入口处继续执行循环体,直到条件为真时再退出循环到达流程出口处,是先执行后判断。因为是“直到条件为真时为止”,所以。。。

直到型循环:表示从结构入口处直接执行循环体,在循环终端出判断条件,如果条件满足,返回入口处继续执行循环体,直到条件为假时再退出循环到达流程出口处,是先执行后判断。因为是“直到条件为假时为止”,所以。。。


第一个问题:
这个问题提得不错,重新时我会为这个JAVA_HOME增加一个注释。
因为我上课时可以直接告诉我的学生,所以忽略了初学者可能不知道JAVA_HOME代表JDK安装路径。

第二个问题:
你的说法有错,空类一样会生成class文件,Java程序大部分类都不能直接运行,只是因为没有main方法。
对于一个Java应用而言,可能包含100个类,但通常只有一个主类(包含main方法)。

第三个问题:
提得太好了,我上课用这本书都用了4次,居然一直没发现我把c敲成了v——c和v正好在一起。呵呵。太谢谢啦。

第四个问题:
你发现得太好了。我也是看了好多次,总是没有留心到这个地方。

我非常欢迎这种能“挑骨头”的读者,就像编译器总在不断提示我们程序出错
——但它的目的,是帮助我们,让我们的程序更完善。
——类似的,我写一本书,肯定会有一些小错误(就像程序一样,没有人会说我的程序从不出错,懂编程的人都知道)。
有了广大读者的帮助,我相信《疯狂Java讲义》会更加完美。
生命没有假期!
如果生命只剩下最后一秒,你可会想到我?

TOP

原帖由 flyliying 于 2008-11-8 17:05 发表
120页 12行
依然可以输出9,6
应该是6,9吧,李老师,请看看


我看过了,应该是9,6。这个地方你错了。
你可以运行那个程序看看就知道了。

这说明你还没有真正理解Java对象的引用的作用。
生命没有假期!
如果生命只剩下最后一秒,你可会想到我?

TOP

原帖由 crim 于 2008-11-8 20:07 发表
(2) 1.6.1节 P16
提到“最简单的java程序”,是一个空类,可以通过javac命令编译
是不是可以补充一下(sun JDK):空文件也可以编译通过,只是不会生成字节码,执行时得到如下错误提示 Exception in thread "main" java.lang.NoClassDefFoundError: 类名



谢谢李老师的回复,还有金币,呵呵
上面的问题我没有描述清楚,想说的是没有任何内容的“空文件”

提到“最简单的java程序”,是一个空类,可以通过javac命令编译
是不是可以补充一下(sun JDK):空文件也可以编译通过,只是不会生成字节码,执行时得到如下错误提示 Exception in thread "main" java.lang.NoClassDefFoundError: 类名


2.2.3节 P33
对java程序而言,可复用的组件通常打包成一个JRA、WAR等文件
JRA改为JAR

TOP

原帖由 crim 于 2008-11-8 22:07 发表
提到“最简单的java程序”,是一个空类,可以通过javac命令编译
是不是可以补充一下(sun JDK):空文件也可以编译通过,只是不会生成字节码,执行时得到如下错误提示 Exception in thread "main" java.lang.NoClassDefFoundError: 类名

2.2.3节 P33
对java程序而言,可复用的组件通常打包成一个JRA、WAR等文件
JRA改为JAR


恩。第二个问题我知道了,等你有更多编程经验就会知道:如果按你这种表述,可能引起更多歧义。

2.2.3的问题非常正确。
生命没有假期!
如果生命只剩下最后一秒,你可会想到我?

TOP

3.1.2节 P43
javadoc的常用选项有如下几个:
-d<directory>:
-windowtitle<text>:
doctitle<html-code>:
缺少中划线“-”

3.4.2节 P49
字符常量必须使用单引号(")括起来
字符常量必须使用单引号(')括起来

3.5.2节 P56
8个包装类都提供了一个parseXXX(String str)的静态方法用于将字符串转换成基本类型
Character类中没有这样的方法,字符串转换成字符数组可以用String类中的非静态方法toCharArray()
1

评分人数

  • kongyeeku

TOP

4.2.2节
P76
switch语句后面的控制表达式的数据类型只能是整型,不能是boolean型
不可以是long类型

P77
如果所有case标签后的值都不与expression表达式的值相等,则执行default标前后的代码块
如果所有case标签后的值都不与expression表达式的值相等,则执行default标签后的代码块
1

评分人数

  • kongyeeku

TOP

我的勘误1

必须得快点把我发现的勘误发上来了,要不就没有金币可赚了:
1.  17 页中间的"注意", 后边少了个 "同" 字. 应该该为:"相同".
2.  74 页第一段代码后的第一段,第二行,应为:"当c--语句...",少了个"-".
3.  74 页倒数第二行:"else 的隐含条件对前面条件取反",建议在"隐含条件"后加个"是"

5.  100 页第四段第二行:"这个一维数组的长度是3个",多了个"个"字

7.  159 页倒数第3行第一句话:"Java 使用构造器对单个对象进行初始化 块 操作",多了个"块"字
8.  172 页讨论"== 和 equals比较运算符",建议加上"== 不能比较类型不同的两个对象":
   class A{} class B{} A a = new A(); B b = new B();  System.out.println(a == b);  这样有错。
  但这样可以: List list = new ArrayList(); System.out.println(a == list);
9.   186 页数组缓存的例子:"如果缓冲池已满时",让 pos = 1重新开始缓存,这个时候会出现重新缓存已经缓存的内容,例如现已经缓存了{1,2,3,4,5,6,7,7,9,10}. 此时若查找 11,则数组的第一个元素重新缓存 11: {11,2,3,4,5,6,7,7,9,10}.  再次查找 10,但此时需要重新将 10 缓存到数组的第二个元素,而10 才刚刚被缓存过
10.  198 页6.6.6 第三段:"简单工厂模式" 和后面的 "命令模式" 相对应,应该为粗体
11.   207 页第一段"注意"中:第一句话,应该为"非静态内部类里不可以有静态初始化块"
12.  209 页第四行"则能在访问控制符对应的访问访问权限内使用",多了个"访问",应该去掉
13.  210 页非代码的倒数第六行应该为粗体
14.  224 页第一行最后一句话:"如果读者还没有记得匿名内部类的话",应该去掉"没有"
15.  232 页非代码倒数第四段第一句话:"无法通过虚引用来获 被引用的对象","获"后面少了个"取"或者"得"
1

评分人数

  • yeeku

TOP

你这么牛,发现在这么多错务啊 。。我刚完了前三章,正在十六章看多线程呢?哈哈,你这下可赚大钱了啊。。
倚楼听风雨,笑看江湖路。。。

TOP

p888 倒数第五行:有时候,我们宁“远”记住国外人的话,但不愿记住我们自己说的话。      

                  应该是:有时候,我们宁愿记住国外人的话,但不愿记住我们自己说的话。
1

评分人数

  • yeeku

TOP

我的勘误2

呵呵,受鼓励了哈。再发我发现的勘误
2. 248 页第一段,第 二句话和第三句话重复
3.  254 页第 10 行,"跑出异常" 应该为 "抛出异常"
4.  268 页注意下面的第一段:""当通常的编程过程...." 应该为:"但通常的编程过程"
5. 273 页第二个 if 后面多了个 ")"
6.  274 页文字第二行"对对象" 多了个 "对" 字

8.  300 页第一行:"写作:Collection<?>"与前文想对应, 应改为:"List<?>"
9.  305 页下边代码上倒数第二行:"与泛型方法签名对比:test(...)",与前文对比应该为:"test(Collection<T> a, ...)"
10. 代码第三行:我通过编译了(我认真的比对了我的代码和书上的代码,我感觉一样,或许哪里看错了?)
public class Test {
        static <T> void test(Collection<? extends T> a, Collection<T> c){
                for(T o : a){
                        c.add(o);
                }
        }
        
        public static void main(String [] args){
                List<Object> ao = new ArrayList<Object>();
                List<String> as = new ArrayList<String>();
                //通过编译了
                test(as, ao);
        }
}
11. 307 页 8.4.3 下边第一段的第二行第二句话,后面的 "dist" 该为 "src"
12. 311 页代码第四行最后的 o 应该为:lsa
13. 316 页文字第一段最后一行 "JVM" 后多了个 "以" 字
14.  323 页第 8 段:"将指定字符串数组" 应该为 "将指定字符数组"

16.  329 页上边的代码片段注释第四行:long 应该为 int
17.  342 页第一段的代码并没有输出"------------------------------",但运行结果中却有
18.  369 页文字第三段:"Java 要求必须现显示......" 多了个"现" 字
19.  370 页文字第一行倒数第5个字该为:"棋"
20.  375 页倒数第二段第二行最后一句话:"或异常没有被处理后..." 是否应把"没有"去掉?
1

评分人数

  • yeeku

TOP

返回列表