gpt4 book ai didi

java - 使用外部模块中的包私有(private)构造函数实例化类

转载 作者:太空宇宙 更新时间:2023-11-04 13:37:58 24 4
gpt4 key购买 nike

我想使用包私有(private)构造函数,以防止从外部实例化某个对象。唯一能够实例化该类的是工厂类,它位于同一个包中。

我担心的是,如果我的应用程序被编译和密封,那么提供具有包私有(private)范围的新类(可以由同一工厂访问(或者为什么不是工厂的新实现)访问)的唯一可能方法是模仿引用我的密封库的项目中包的完全相同的路径。

虽然这绝不是不可能的,但我只是想知道这是否应该被视为一个好的做法。您对这种意义上使用的包私有(private)作用域有何看法?

最佳答案

应该是这样的。我也没有想到其他方法来实现这一目标。

但是,恕我直言,这样做通常不是很有建设性。可能存在禁止其他预期用途的极端情况,但总的来说,我认为您应该尝试建立工厂,因为它易于使用并说服人们。如果您的工厂不可扩展,人们最终可能会在“您的”包中创建类,只是为了按照他们想要的方式访问您的类。

关于java - 使用外部模块中的包私有(private)构造函数实例化类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31516781/

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