关于类及其修饰符的一些描述,正确的是

[复制链接]
查看11 | 回复4 | 2017-10-2 01:55:00 | 显示全部楼层 |阅读模式
A。abstract类只能用来派生子类,不能用来创建abstract类的对象。
B.final类不但可以用来派生子类,也可以用来创建final类的对象。
C.abstract不能与final同时修饰一个类。
D.abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。
主要是这道题他没说是多选还是单选。C是对的
D感觉也是对的。
概念性问题还是理解不够啊···
请教达人指教···

回复

使用道具 举报

千问 | 2017-10-2 01:55:00 | 显示全部楼层
D对了 abstract类不能创建对象,必须产生其子类,由子类创建对象。 对于abstract方法,只允许声明,而不允许实现。 如果一个类是一个abstract类的子类,它必须具体实现父类的abstract方法。 abstract类可以没有abstract方法,但一个类如果有abstract方法,那么这个类必须用abstract修饰!
回复

使用道具 举报

千问 | 2017-10-2 01:55:00 | 显示全部楼层
A是对的,abstract类不能实例化。B错,final类不能被继承。C是对的,一个类不能同时是abstract和final的。编译不通过。D前半句对,如果一个类存在abstract方法,那么类也必须是abstract,否则编译不通过。后半句也是没有问题的,虽然一个类是abstract,但是它可以没有任何方法,只定义一些变量,常量,字段等。
回复

使用道具 举报

千问 | 2017-10-2 01:55:00 | 显示全部楼层
C是对的。。abstract类的抽象方法需要子类实现。。但final又不能继承。。这是矛盾的。。所以他们只能有一个。。D也是对的。。一旦有抽象方法。。那么这个类必须声明为抽象的。。
回复

使用道具 举报

千问 | 2017-10-2 01:55:00 | 显示全部楼层
这道题目应该是选错误的是哪一个吧
B是错误的,其他都是正确的。 final类是最终类,不能被任何其他类所继承,用它定义的类不能再派生子类。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行