小编典典

Java中的“最终类”有什么意义?

all

我正在阅读一本关于 Java 的书,它说您可以将整个类声明为final. 我想不出我会在哪里使用它。

我只是编程新手,我想知道 程序员是否真的在他们的程序中使用它 。如果他们这样做,他们什么时候使用它,以便我可以更好地理解它并知道何时使用它。

如果Java是面向对象的,你声明了一个类final,是不是就停止了类具有对象特性的想法呢?


阅读 149

收藏
2022-03-04

共1个答案

小编典典

首先推荐这篇文章:Java:When to create a final
class


如果他们这样做,他们什么时候使用它,以便我可以更好地理解它并知道何时使用它。

一个final类只是一个 不能扩展 的类。

(这并不意味着对类对象的所有引用都会像被声明为一样final。)

这个问题的答案中涵盖了将类声明为 final 是否有用:

如果Java是面向对象的,你声明了一个类final,是不是就停止了类具有对象特性的想法呢?

在某种意义上是的。

通过将一个类标记为最终类,您可以禁用该部分代码的强大而灵活的语言特性。但是,某些类不应该(并且在某些情况下 不能
)被设计为以一种好的方式考虑子类化。在这些情况下,将类标记为 final 是有意义的,即使它限制了 OOP。(但请记住,最终类仍然可以扩展另一个非最终类。)

2022-03-04