[問題] 關於SCJP 第77題的疑問
Given:
11. public static void main(String[] args) {
12. Object obj = new int{1, 2, 3};
13. int[] someArray = (int[])obj;
14. for (int i: someArray) System.out.print(i + " ");
15. }
What is the result?
A. 1 2 3
B. Compilation fails because of an error in line 12.
C. Compilation fails because of an error in line 13.
D. Compilation fails because of an error in line 14.
E. A ClassCastException is thrown at runtime.
答案:A
我的疑點在第13行,
任何物件都是繼承 Object物件
obj宣告的類型為 Object
要把Object 向下轉型成 int[] 類型, 應該會產生 ClassCastException
可是卻編譯成功??
想請問版上高手我錯誤的點是在哪邊??
謝謝!!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.254.105.196
→
08/23 14:33, , 1F
08/23 14:33, 1F
推
08/23 14:47, , 2F
08/23 14:47, 2F
→
08/23 14:55, , 3F
08/23 14:55, 3F
→
08/23 15:41, , 4F
08/23 15:41, 4F
推
08/27 11:27, , 5F
08/27 11:27, 5F
→
08/27 11:29, , 6F
08/27 11:29, 6F
→
08/27 11:31, , 7F
08/27 11:31, 7F
推
08/27 11:35, , 8F
08/27 11:35, 8F