Xaq*_*ron 30 c# constructor initialization
我们都从根本上知道a Constructor和用户定义Initialize()方法之间的区别.
我的问题集中在对象创建的最佳设计实践上.我们可以将所有Initialize()代码放入Constructor(),反之亦然(将所有预热代码移动到Initialize方法并从中调用此方法Constructor).
目前,设计一个新类,我在里面创建任何新实例,constructor()并将任何其他热身代码移动到Initialize()方法中.
您认为最好的权衡点是什么?
dtb*_*dtb 26
我认为应该考虑多个方面:
构造函数应该以一种处于可用状态的方式初始化对象.
构造函数应该只初始化一个对象,而不是执行繁重的工作.
构造函数不应直接或间接调用虚拟成员或外部代码.
因此,在大多数情况下,不需要Initialize方法.
如果初始化涉及的不仅仅是将对象置于可用状态(例如,当需要执行繁重的工作或需要调用虚拟成员或外部时),那么Initialize方法是个好主意.
| 归档时间: |
|
| 查看次数: |
21002 次 |
| 最近记录: |