在构造函数中使用此代码和内联代码之间的权衡

Tradeoff between using this and inline code in constructor

通过 this() 调用重载构造函数有用的一个原因是它可以防止 code.In 许多情况下不必要的重复,减少重复代码会减少加载 class 因为目标代码通常更小。这对于通过 Internet 交付的程序尤其重要,因为在这些程序中加载时间是一个问题。

但是,您需要小心。调用 this() 的构造函数将比那些包含所有内联初始化代码的构造函数执行得慢一些。这是因为调用第二个构造函数时使用的调用和 return 机制增加了开销。如果您的 class 将仅用于创建少数对象,或者如果 class 中的构造函数 call this() 将很少被使用,那么这种 运行 时间性能的下降可能是微不足道的。

class加载时间怎么变小了? 和 在构造函数中使用它和使用内联代码之间的权衡点应该是什么?

这是典型的过早优化案例。在消除重复时没有人考虑性能,他们只是考虑删除几个本质上做同样事情的代码路径,同时使代码库混乱并为这些代码路径之间的分歧提供机会。

结论:不要为这些鸡毛蒜皮的事情操心,只要写出好的简洁的代码即可。重复对您系统的伤害比方法调用对您性能的伤害要大一千倍。