java构造函数最佳实践

时间:2011-02-08 20:31:00

标签: java constructor

6 个答案:

答案 0 :(得分:3)

答案 1 :(得分:2)

A(A a){/*do something*/}可以作为复制构造函数使用。

答案 2 :(得分:2)

正如其他人所说,你有一个复制构造函数。有一个number of reasons为什么你可能需要一个复制构造函数。其中一些是:

  1. 您可以提供克隆方法的替代方法。 (这是通过Clonable接口实现的。)
  2. 复制构造函数很容易实现。
  3. 您可以使用其他构造函数来构建副本(通过从原始对象中提取数据并转发到常规构造函数)。
  4. 查看我在此帖子中添加的链接,了解有关复制构造函数的更多信息以及您希望使用它们的原因(如果需要)。

答案 3 :(得分:1)

除非您需要复制构造函数,否则没有任何优势。如果这个对象应该是clonable而不是使用复制构造函数语义,我建议使用clone()方法。

答案 4 :(得分:0)

答案 5 :(得分:0)

它也可用于许多基于委派的设计模式,例如decoratorproxy等。

提供默认构造函数可能仍被视为良好实践,尤其是在考虑依赖注入或序列化的情况下。