`
L.G.Alexander
  • 浏览: 155747 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(十二):一个类abstract和final关键子不能同时使用

 
阅读更多
public abstract final class AbstractFinalTest {

}

问题:上述代码能否编译通过?为什么?
解答:不能编译通过。
分析:它会报错,非法的修饰符组合abstract和final。分析:java采取什么策略导致abstract和final不能同时使用呢?是这样的:abstract修饰一个类表示这个类是抽象类,抽象类的特点是如果一个类是抽象类,里面不一定包含抽象的方法,可以全都是具体的方法。反过来说,如果一个类里面包含了抽象的方法,这个类必然是抽象类。对于抽象类来说,不管里面是不是全都是具体的方法,java规定它都不能被实例化,不能通过new的方式来生成它的一个对象,我们必须通过一个子类继承它来完成这个抽象类所完成的功能。通过实例化它的子类来实现抽象类的功能。final修饰一个类的时候表示类不能被继承,它是一个终态类。所以abstact和final是一种矛盾的状况。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics