gpt4 book ai didi

java - 如何避免在 Java 中不使用 final 关键字的子类

转载 作者:行者123 更新时间:2023-11-30 06:13:42 25 4
gpt4 key购买 nike

final class AbsTest {}

class BTest extends AbsTest {}

如何在不使用 final 关键字的情况下防止创建子类?

最佳答案

这里有几个选项

  • 创建私有(private)构造函数
  • 使每个方法成为 final方法,这样人们就无法覆盖它们。您可以通过这种方式避免意外调用子类的方法。但这并没有停止子类化。
  • 将检查放入类的构造函数中:

    如果 (this.getClass() != abc.class) { throw new RuntimeException("不允许子类");

但是 final 提供来解决这样的问题我必须说所以最好去用 final!!!

关于java - 如何避免在 Java 中不使用 final 关键字的子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31563120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com