| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1272 人关注过本帖
标题:[求助]一道JAVA强制类型转换的考题
只看楼主 加入收藏
musicyxy
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2004-8-14
收藏
 问题点数:0 回复次数:9 
[求助]一道JAVA强制类型转换的考题

(1)
1.public class Test {
2.public static void main(String arg[]){
3.class Foo{
4.public int i = 3;
5.}
6.Object o = (Object)new Foo();
7.Foo foo = (Foo)o;
8.System.out.println(" i = " + foo.i);
9.}
10.}
What is the result?
A. i = 3
B. Compilation fails. 编译错误
C. A ClassCastException is thrown at line 6. 第6行抛出异常
D. A ClassCastException is thrown at line 7. 第7行抛出异常

Answer:A

官方答案是A,但是实际编译过程中出现的异常,我真不知道该选什么了。
大家帮助我分析讨论一下。我着急解决这个问题

搜索更多相关主题的帖子: JAVA 考题 类型 
2006-05-05 12:28
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 

答案当然是A啦,你为什么会编译错误 呢,我这里都可以编译通过的


可惜不是你,陪我到最后
2006-05-05 12:38
musicyxy
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2004-8-14
收藏
得分:0 

奇了怪了,这次没有出现异常。

不过,很感谢斑竹


2006-05-05 12:49
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
上次有异常,可能是你的输入有误吧,以后输入可要小心一点了

可惜不是你,陪我到最后
2006-05-05 13:12
★王者至尊★
Rank: 1
等 级:新手上路
帖 子:528
专家分:0
注 册:2006-3-28
收藏
得分:0 
我这里也可以编译通过...

------Java 爱好者,论坛小混混,学习中------
2006-05-05 13:24
musicyxy
Rank: 1
等 级:新手上路
帖 子:120
专家分:0
注 册:2004-8-14
收藏
得分:0 
能说明一下这类问题的解题思路吗?

2006-05-05 13:27
★王者至尊★
Rank: 1
等 级:新手上路
帖 子:528
专家分:0
注 册:2006-3-28
收藏
得分:0 
逐步分析就行了

------Java 爱好者,论坛小混混,学习中------
2006-05-05 18:26
Grace_TT
Rank: 1
等 级:新手上路
威 望:1
帖 子:324
专家分:0
注 册:2005-12-21
收藏
得分:0 

可是下面这个程序为什么能通过编译,但是运行时出现异常呢:
class MyClass
{
}
class A extends MyClass
{

}
class B extends MyClass
{
}
class c

{ public static void main(String args[])
{
MyClass m=new MyClass();
A a=(A)m;
}
}
Exception in thread "main" java.lang.ClassCastException: MyClass
at c.main(text.java:17)
Press any key to continue...

2006-05-06 05:19
wtyl0088
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-3-24
收藏
得分:0 

当然了你把一个父类强制转化为子类 当然要异常了 就好比
车是父类 而自行车是子类 你可以说一个自行车就是车 但你不能说一个车就是自行车 这样不就有问题了


2006-05-06 10:13
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 

楼上分析得有道理
转换当被转换的对象包含生成的对象的时候,这个时候是可以转换的,否则就不可以


可惜不是你,陪我到最后
2006-05-06 10:14
快速回复:[求助]一道JAVA强制类型转换的考题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017102 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved