【问题标题】:Why only public methods are allowed in an interface? [duplicate]为什么接口中只允许使用公共方法? [复制]
【发布时间】:2016-07-28 17:56:25
【问题描述】:

为什么 java 强制接口方法公开,抽象类与接口有何不同?

【问题讨论】:

  • 让我反问一下:您希望接口支持哪些其他方法?
  • 否则你在实现接口的时候看不到你想让接口实现什么...
  • 你能在接口中找到 private 方法的好用例吗? ;)
  • 一个接口声明了一个合约/API,这意味着任何实现该接口的类都应该尊重该合约(实现接口中声明的方法,保留它们的签名等)。私有方法是一个实现细节,这就是为什么它不应该成为合同的一部分。实现细节由类实现者决定。出于这个原因,在接口中拥有私有方法胜过拥有接口的目的......

标签: java interface public-method


【解决方案1】:

快速响应是:

  • 必须重写所有接口方法,因为它们必须是公共的。
  • 抽象类可以被其他类扩展,接口只能被类实现并被其他接口继承。

您可以在这里获得更多信息:http://www.javaworld.com/article/2077421/learn-java/abstract-classes-vs-interfaces.html

【讨论】:

    猜你喜欢
    • 2013-04-11
    • 2013-09-15
    • 2016-09-06
    • 2014-10-26
    • 2014-06-20
    • 2015-02-06
    • 2023-03-23
    • 2016-01-06
    相关资源
    最近更新 更多