【发布时间】:2010-05-23 19:04:01
【问题描述】:
我们可以通过将构造函数设为私有来限制类对象的创建。 但是这个构造函数仍然可以从类中调用。 在 Java 中有什么方法可以防止这种情况发生吗?
谢谢。
【问题讨论】:
-
您可以使用 Aspectj 来确保它。但是,除非您希望在多个地方这样做,否则只建议这样做,因为它会增加巨大的依赖性和复杂性。通常情况下,标准和实践会比工具和控制更好地为您服务。
-
我们从不打算实例化的私有构造函数中抛出 UnsupportedOperationException。实际上,这个习惯用法对我们来说很常见,以至于我们的 IDE 被配置为输入 pct
(四个按键),它会生成一个抛出 UnsupportedOperationException 的私有构造函数。
标签: java constructor singleton private-constructor