当前位置: 首页 > 面试题库 >

禁止子类覆盖Java方法

卫逸春
2023-03-14
问题内容

假设我在Java类中有一个方法,并且我不希望该类的任何子类能够覆盖该方法。我可以那样做吗?


问题答案:

您可以将方法声明为final,如:

public final String getId() {
   ...
}

有关更多信息,请参见http://docs.oracle.com/javase/tutorial/java/IandI/final.html



 类似资料:
  • 这是一个更大的项目,所以我将简化结构,不包括这里涉及的所有代码,但我想知道这在概念上是否可行,以及我可能遇到的潜在障碍。 我从主类中得到了几个级别的子类,其中一个级别包含方法age()(从顶部超类重写),该方法调用useEnergy()。此类的直接子类重写age()。该类的直接子类需要重写useEnergy(),但被重写方法中的代码永远不会执行(通过System.out.printlns验证)。有

  • 本文向大家介绍PowerShell Out-File禁止覆盖文件的方法,包括了PowerShell Out-File禁止覆盖文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文介绍使用PowerShell来写文件时,如何阻止系统自动覆盖已有的文件。 我们在使用脚本进行文件处理的时候,我们可能不希望使用Ou-File生成的文件覆盖已有的文件。那么怎么实现呢?在Out-File这个CmdLet中,

  • 问题内容: 是否有一种标准方法可以在Swift中制作“纯虚函数”,即。一个 必须 由每个子类中被覆盖,并且,如果不是的话,将导致编译时错误? 问题答案: 您有两种选择: 将超类定义为协议而不是类 Pro :编译时检查每个“子类”(不是实际的子类)是否实现了所需的方法 缺点 :“超类”(协议)无法实现方法或属性 2.声明该方法的超级版本 例: Pro :可以在超类中实现方法和属性 缺点 :不检查编译

  • 我有一个实现可比较接口的类A,和一个扩展A的类B。我需要找到一种方法来覆盖类B中的。 我发现了一个类似的问题不能用可比的父子孙继承并试图实施提供的解决方案 A类: B类: 例外情况: 线程“main”java中出现异常。lang.ClassCastException:T4级。A不能转换为T4级。B(T4.A和T4.B在加载器“app”的未命名模块中)

  • 我正在开发一个Java中的图形库(https://github.com/aisthesis/java-graph2012 完整的上下文),并且需要覆盖权重边缘类的hashCode(),其中边缘不定向。也就是说,我设置了我的 equals() 覆盖方法,以便对于 2 个加权边 e1 和 e2,如果以下条件之一成立(from() 和 to() 方法返回边的尾部和头顶点),则它们相等: e1.从() =

  • 问题内容: 现在,我正在尝试用我的LESS代码在CSS3中执行此操作: 但是,LESS编译时将输出以下内容: 有没有办法告诉LESS不要以这种方式编译它并正常输出它? 问题答案: 使用[转义字符串(也称为转义值): 另外,如果您需要将Less Math与转义字符串混合使用: 编译为: 默认情况下,这作为“少”将值(转义的字符串和数学结果)连接在一起时起作用。