Java Final类或私有构造函数

问题描述 投票:1回答:1

当我们想关闭一个要继承的类时,我们用final声明类,

final class Myclass {}

但是当我们将ctor声明为private时,将具有相同的效果,

class Myclass {
     private Myclass() {}
}

但是真的一样吗?代码优化或代码可读性有什么区别。以及哪些类必须接近继承,

1-)不变类2)每个方法和成员变量声明为静态类>

但是对于第二个选项,即使Arrays的所有方法都声明为static,也没有用final声明java.util.Arrays

当我们想关闭一个类以继承时,我们用最终的,最终的类Myclass {}声明类,但是当我们声明ctor private时,将具有相同的效果,class Myclass {private ...

java inheritance final private-constructor
1个回答
0
投票
如果您要创建一个不可变的类,或者只是出于某种原因而不能创建子类的类,则应将其声明为final。专用构造函数应在实用工具类中使用,这样可以阻止继承并确保不能创建该类的实例。

0
投票
我通常要做的是使类final

© www.soinside.com 2019 - 2024. All rights reserved.