【问题标题】:Why Lint give an advice to make my constructor protected for abstract class?为什么 Lint 建议让我的构造函数受抽象类的保护?
【发布时间】:2013-08-07 13:19:38
【问题描述】:

我想知道 Lint 建议保护抽象类的构造函数的背后是什么?

【问题讨论】:

    标签: java android


    【解决方案1】:

    非子类不能调用抽象类的构造函数(这是不可能的)。唯一可以调用该构造函数的类是抽象类的子类。将构造函数设置为受保护只允许子类看到构造函数。

    编辑:有关详细信息,请参阅此question

    此外,Joop 关于匿名实现是正确的(我什至不知道您可以在 Java 中做到这一点)。但是,我从未见过有人这样做。

    【讨论】:

      【解决方案2】:

      貌似是为了防止匿名实现:

      new AbstractClass() { ... };
      

      【讨论】:

        猜你喜欢
        • 2019-11-18
        • 2010-11-08
        • 2013-11-13
        • 2011-01-13
        • 2015-11-17
        • 2010-10-20
        • 1970-01-01
        • 1970-01-01
        • 2013-08-29
        相关资源
        最近更新 更多