求指教,不太理解

sunday_tutu 2016-02-17 02:07:48
Given the folowing classes which of the following will compile without error ?
interface IFace{}
class CFace implements IFace{}
class Base{}
public class ObRef extends Base{
public static void main(String argv[]){
ObRef ob = new ObRef();
Base b = new Base();
Object o1 = new Object();
IFace o2 = new CFace();
}
}
A. o1=o2;
B. b=ob;
C. ob=b;
D. o1=b;
解答:B

为什么选B
...全文
199 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Just_do_it. 2016-02-20
  • 打赏
  • 举报
回复
A::object是顶层类,可以接受普通类的传入; B:C:子类和父类,可以直接向上转型,父类 = 子类; 向下转型要强转 子类 = (子类)父类; D:同A选项一样; 故: ABD可以编译通过;
SuperLin 2016-02-18
  • 打赏
  • 举报
回复
肯定 abd, 这个都不用测试, 子类肯定能值给父类, 但父类不能直接赋值给子类(要强转)
qq_16979125 2016-02-17
  • 打赏
  • 举报
回复
我亲自试了一下发现答案是abd,我百度了一下答案也是abd,可能你的答案有错吧。c答案父类赋值给子类必须强转

23,407

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧