Discussion:
[SCJP] 猛虎後面題目勘誤 歡迎有心者補完
(时间太久无法回复)
ArssertionError
2007-03-16 13:02:48 UTC
Permalink
這幾題是目前問題比較大的
==============================================================================
題目77
class Inner{
private int x;
public void setX(int x){this.x = x}
public int getX( return x;)
}
class Outer{
private Inner y;
public void setY(Inner y){ this.y = y }
public Inner getY() { return y; }
}
public class Gamma {
public static void main(String[] args){
Outer o = new Outer;
Inner i = new Inner;
int n = 10;
i.setX(n);
o.setY(i);
//insert code here
System.out.println(o.getY().getX());
}
}
Which three code fragments,added individually at line 29, produce the output
100?(choose three)
答案是:
B. setX(100);
C. getY().setX(100);
F. i = new Inner();i.setX(100);o.setY(i);

這BC兩個答案 真是讓人百思不得其解
原來在static method裡面可以這樣存取non-static?
好像少了"i."吧....
==============================================================================
第79題
11. public static void test(String str){
12. if(str == null | str.length() == 0){
13. system.out.println("String is empty");
14. }else{
15. system.out.println("String is not empty");
16. }
17. }
.
.
.
31. test(null);

答案是執行時拋出例外...?
第一 system他的s小寫
第二 就算S是手殘打錯 解說竟然說 "main()方法中資料型別應為String[]"
我這題怎麼找都找不到main....
==============================================================================
第80題
要我們從樹狀圖中找出哪一個是正確的
com.foo.bar.Dog
com.foo.bar.blatz.Book
com.bar.Car
com.bar.blatz.Sun
正解竟然是這樣畫的
|
|bar----blatz--Sun.class
| |
| ---Car.class
|
|com--foo--bar----baltz--Book.class
|
---Dog.class
這哪可能合理....
==============================================================================
試題83

這題就是之前有板友問的GC那題 就不再贅述
==============================================================================
試題97
解析根本在亂寫的一題
import static java.lang.System.out;
public class Yippee{
public static void go(Long n){out.println("Long ");}
public static void go(Short n){out.println("Short ");}
public static void go(int n){out.println("int ");}
public static void main(String[] args){
short y = 6;
long z = 7;
go(y);
go(z);
}
}
what is the result?
這題解答我自己寫 他的我不想說了 不知所云

當main執行到go(y)時 因為y是short 在引數優先權來說
相同型別>自動轉型>自動拆裝/包裝>var-arg
故會顯示int

同理 當main執行到go(z)
因自動轉型只能把小的放進大的
所以不能傳入int 故自動包裝成Long 顯示Long

答案: int Long

==============================================================================
試題111
這題是我搞不懂一個選項
題目是這樣的
public void takeList(List<? extends String> list){
//insert code here
}
這是拖曳配對題
其中一個
list.add("Foo");要跟編譯錯誤配...?

理由是 "不保證list之前放置的內容是String"

奇怪 這種題目不是要我們假設除了看的到的其他都是正確的...

==============================================================================
試題122
這題題目我不打了
答案是D沒錯
解說太好笑了
選項: A: The code will compile without changes.
解析: A: 錯誤 此題可以編譯成功
==============================================================================
試題138
這題也很好玩
題目本身編號從1~7
答案是D:compilation fails because of an error in line 13.
經過我聰明的大腦分析後 應該是第3行
以及 解說中 "等號(==)" 的()裡面應該只有一個=
我從來不知道"=="叫做等號...
==============================================================================
試題140

答案D 選項不知去向

要我自己掰題目? 饒了我吧
==============================================================================
試題143

答案是C

不過解說的最後面說答案選D

到底是要我選C還選D 我好亂阿....

(好吧偷偷告訴你 正解是C沒錯)
==============================================================================
試題145

選項C應該是Line "3"不是Line "2"
不然解說在說啥我又看不懂了
==============================================================================
試題154
class One{
void foo(){}
}
class Two extends One{
//insert method here
}

which three methods inserted individually at the line will correctly class Two?
(choose three)
A. int foo(){/*....*/}
B. void foo(){/*.....*/}
C. public foo(){/*....*/}
D. private foo(){/*....*/}
E. protected foo(){/*....*/}
答案 BCE
很抱歉 我怎麼看都看不出來為啥有CE

沒有回傳值沒有回傳值沒有回傳值沒有回傳值沒有回傳值沒有回傳值沒有回傳值
又不是建構子...
好吧 我相信他是忘了加void上去
==============================================================================
試題168

還真是一路發阿 發到發瘋了
這題拖曳題的選項又消失了 被鬼抓走了嗎?
誰去把他找回來?
==============================================================================

今天先到此為止 在bbs上打這種東西真的會死人...

希望有幫到大家的忙


--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.121.240.81
ArssertionError
2007-03-18 14:42:18 UTC
Permalink
吃光光

原來作者有做勘誤網頁 真是難找...

補上連結
http://www.osd.to/vincentjava/CorrigendumSCJP5.htm

這樣我那篇意義就不大了@@..

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.121.233.221
推 PsMonkey:意義很大,是效益不大啦 >///<  03/18 22:41
火星上的人類學家
2007-03-19 06:39:37 UTC
Permalink
※ 引述《DavyBlue (ArssertionError)》之銘言:
: 吃光光
: 原來作者有做勘誤網頁 真是難找...
: 補上連結
: http://www.osd.to/vincentjava/CorrigendumSCJP5.htm
: 這樣我那篇意義就不大了@@..

我要問正文3-79頁,下半頁那是在寫什麼東西?
亂七八糟的。

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.233.205
ArssertionError
2007-03-19 08:36:24 UTC
Permalink
※ 引述《orion (火星上的人類學家)》之銘言:
: 我要問正文3-79頁,下半頁那是在寫什麼東西?
: 亂七八糟的。
名稱很怪 說明很怪 但是沒有錯誤
轉型就轉型 他硬要給個啥"強制轉型"的名稱...
這邊主要是說要使用轉型 最好是配合instanceof使用
避免轉型造成程式執行時拋出例外
最簡單的例子
Dog is-a Animal
Cat is-a Animal

Animal a = new Dog();
Cat c = (Cat)a1;
編譯會過 相信我
但是執行時會拋出例外
故應加上instanceof 判斷並用if 判斷式包起來

if ( a instanceof Cat ){
Cat c = (Cat)a1;
}
以上

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.121.240.99
※ 編輯: DavyBlue 來自: 203.121.240.99 (03/19 16:36)
火星上的人類學家
2007-03-22 13:03:23 UTC
Permalink
※ 引述《DavyBlue (ArssertionError)》之銘言:
: ※ 引述《orion (火星上的人類學家)》之銘言:
: : 我要問正文3-79頁,下半頁那是在寫什麼東西?
: : 亂七八糟的。
: 名稱很怪 說明很怪 但是沒有錯誤
: 轉型就轉型 他硬要給個啥"強制轉型"的名稱...
: 這邊主要是說要使用轉型 最好是配合instanceof使用
: 避免轉型造成程式執行時拋出例外
: 最簡單的例子
: Dog is-a Animal
: Cat is-a Animal
: Animal a = new Dog();
: Cat c = (Cat)a;
: 編譯會過 相信我
: 但是執行時會拋出例外
: 故應加上instanceof 判斷並用if 判斷式包起來
: 如
: if ( a instanceof Cat ){
: Cat c = (Cat)a;
: }
: 以上
可是第二個例子不是會自動轉型嗎?
為什麼要強制轉型?
感覺他兩個例子根本是一樣的東西
可是說明時卻說他們一個要強制轉,一個會自動轉?

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.203.9
ArssertionError
2007-03-23 00:56:57 UTC
Permalink
※ 引述《orion (火星上的人類學家)》之銘言:
: ※ 引述《DavyBlue (ArssertionError)》之銘言:
: : 名稱很怪 說明很怪 但是沒有錯誤
: : 轉型就轉型 他硬要給個啥"強制轉型"的名稱...
: : 這邊主要是說要使用轉型 最好是配合instanceof使用
: : 避免轉型造成程式執行時拋出例外
: : 最簡單的例子
: : Dog is-a Animal
: : Cat is-a Animal
: : Animal a = new Dog();
: : Cat c = (Cat)a;
: : 編譯會過 相信我
: : 但是執行時會拋出例外
: : 故應加上instanceof 判斷並用if 判斷式包起來
: : 如
: : if ( a instanceof Cat ){
: : Cat c = (Cat)a;
: : }
: : 以上
: 可是第二個例子不是會自動轉型嗎?
: 為什麼要強制轉型?
: 感覺他兩個例子根本是一樣的東西
: 可是說明時卻說他們一個要強制轉,一個會自動轉?
所以我有說 他例子舉的不好嘛
嚴格來說他那樣寫也沒錯
不過明確宣告轉型最典型的例子是
從collection中取出的物件轉回原本的型態
只是有了泛型之後似乎也沒有必要...

所以我在上面就抱怨過了 這本書的觀念寫的太少
硬要把一堆章節濃縮的結果 就是會什麼都說不清楚
我的另一本碁峰翻Gotop的翻譯書
光instanceof部份就比他多出5-6頁
猛虎好像才花不到2頁在說吧...
要建立扎實的基本觀念 我還是比較推薦Kathy Sierra寫的那本
Sun Certified Programmer for Java 5 Stydy Guide
--
題外話 我去考scjp過了是過了
猛虎的題目出了70%左右.....會不會太作弊...
另外 考試的時候 一般說的覆寫 他的中文是翻置換 這點要注意

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.113.75.220
火星上的人類學家
2007-03-25 07:56:26 UTC
Permalink
※ 引述《DavyBlue (ArssertionError)》之銘言:
: 所以我有說 他例子舉的不好嘛
: 嚴格來說他那樣寫也沒錯
: 不過明確宣告轉型最典型的例子是
: 從collection中取出的物件轉回原本的型態
: 只是有了泛型之後似乎也沒有必要...
: 所以我在上面就抱怨過了 這本書的觀念寫的太少
: 硬要把一堆章節濃縮的結果 就是會什麼都說不清楚
: 我的另一本碁峰翻Gotop的翻譯書
: 光instanceof部份就比他多出5-6頁
: 猛虎好像才花不到2頁在說吧...
: 要建立扎實的基本觀念 我還是比較推薦Kathy Sierra寫的那本
: Sun Certified Programmer for Java 5 Stydy Guide

因為猛虎的題目,跟TestKing幾乎一模一樣。
我覺得那些題目是考古題網站抄來的。

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.237.182

Loading...