A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© tianzhu2725 中级黑马   /  2016-6-18 06:31  /  1451 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

这是我们基础班结束后考试的一道题,感觉是选cd不知道对不对 大家看下答案到底是哪个?并解释下,以便让更多同学学习,谢谢
class ClassA{}
class ClassB extendsClassA{}
class ClassC extendsClassA{}
以及
ClassA p0 = newClassA();
ClassB p1 = newClassB();
ClassC p2 = newClassC();
ClassA p3 = newClassB();
ClassA p4 = newClassC();
Ap0 =p1;
Bp1 =p2;
Cp1 =(ClassB)p3;
Dp2 =(ClassC)p4;

11 个回复

倒序浏览
全部都是错的 new ClassA() 能不能中间加个空格

点评

赞!  发表于 2016-6-19 09:22
回复 使用道具 举报
全部都是错的 new ClassA() 能不能中间加个空格
回复 使用道具 举报
公司早上网速太差,居然发重了
回复 使用道具 举报
安静的喝会奶 发表于 2016-6-18 08:56
全部都是错的 new ClassA() 能不能中间加个空格

那个是格式没写好  总应该有对的把
回复 使用道具 举报
我也认为 cd
回复 使用道具 举报

c 中先让 P3父类引用子类对象 P3是 classB的一员  但是是A的类型  再用强转成(ClassB)p3 向下转型

点评

赞!  发表于 2016-6-19 09:25
回复 使用道具 举报
ACD
a,父类引用指向子类对象
cd 先父类引用指向子类对象 ,所以可以向下强转
回复 使用道具 举报
我觉得应该是正确的,我觉得A不对,因为A类的引用指向,子类的对象,应该进行显示类型转换才可以
回复 使用道具 举报
tianzhu2725 发表于 2016-6-18 19:22
那个是格式没写好  总应该有对的把

不好意思,我把复制看成等号了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马