读书人

java有关问题详解

发布时间: 2013-01-11 11:57:35 作者: rapoo

java问题详解
如果Pet是一个抽象类而且是Cat的父类,那么下列代码中正确的是()
Cat cat = new Pet();这是错的吗 为什么
[解决办法]
因为Pet是一个抽象类,抽象类是不能被实力化的。
[解决办法]
应该是Pet p=new Cat();
Pet是抽象类,不能被实例化
Cat是Pet的子类,Pet类型的引用能指向Cat,就像是猫是宠物一样。。宠物是猫就错了
深层的还是要看书

[解决办法]
首先,抽象类不能被实例化。顶1楼

其次,就算Pet不是抽象类,这样写也是不对的。
父类的实例化对象不可以直接赋给子类引用,需要类型转换;但是反过来是可以的,子类的实例化对象可以赋给父类引用

读书人网 >Eclipse开发

热点推荐