在C#中调用另一个构造函数
当处理初始化只读字段的构造函数时,避免重复逻辑是可取的。此外,仅在构造函数内设置只读字段可确保数据完整性。但是,构造函数不能直接调用其他构造函数。
解决方案:方法链式调用
为了克服这个限制,可以使用方法链式调用。在C#中,这涉及从现有构造函数中调用带有参数的新构造函数。此语法允许您初始化多个字段,同时集中设置逻辑:
<code class="language-csharp">public class Sample { public Sample(string theIntAsString) : this(int.Parse(theIntAsString)) { // ...额外的初始化逻辑... } public Sample(int theInt) { _intField = theInt; } public int IntProperty => _intField; private readonly int _intField; }</code>
通过从接收字符串参数的构造函数中调用接收整数参数的构造函数,您可以将字段初始化委托给前者。这消除了代码重复并确保了字段设置的一致性。
以上是如何在 C# 中调用一个构造函数以避免代码重复?的详细内容。更多信息请关注PHP中文网其他相关文章!