Java中的静态和静态final方法

问题描述

最终成员

每当我们使一个方法成为 final 时,我们就不能覆盖它。即我们不能从子类提供超类的最终方法的实现。 因此,使方法最终化的全部目的是防止从类(子类)外部修改方法

静态成员

对类的成员(变量、方法或内部类)使用 static 关键字将确保该类的每个实例或对象只有一个该成员的实例。 所以,如果一个方法是 final 我们不能覆盖它。为什么?因为静态成员意味着只有一种类型,如果覆盖它,它就不会适用于类的每个实例。

既然我们已经了解了 final 关键字和静态关键字的用途,让我们来混淆一下。

现在,如果有一个静态成员和一个最终成员,虽然两者都不能被覆盖,但我仍然可以很容易地区分它们并且可以想象不同的用例。 就像,最终成员需要访问一个对象,并且对于不同的对象可以具有不同的值(在变量的情况下),并且一旦初始化就无法更改,并且可以在没有任何对象的情况下访问静态成员,但对于其他每个成员都是相同的对象,初始化后可以更改。

final 成员和 static 成员听起来完全相互赞美。

但最让我失望的是静态方法和静态最终方法

注意 - 我说的是静态和静态最终方法而不是变量。我也能够理解静态和静态最终变量两个之间的区别。就像静态变量和静态最终变量对于每个实例都具有相同的值,并且不需要访问对象,但是可以更改静态变量,而静态最终变量一旦初始化就保持不变。

但是当涉及到静态方法和静态最终方法时,静态和静态最终变量的唯一区别对我来说没有意义。就像我们不能从类外部更改方法的定义

问题 - 那么拥有静态 final 方法有什么意义?

问题- 静态方法可以隐藏是什么意思?能否举例说明一下?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)