例子
public class ClassA
{
public ClassA(string someString){}
}
public class ClassB : ClassA
{
public ClassB(string someString):base(someString.ToLower()){}
}
我调用继承的 ClassB 构造函数。我传入一个空值。 ToLower() 在 null 上抛出异常。我想在那之前检查是否为空。我该怎么做?
最佳答案
简单。使用null-coalescing operator :
public ClassB(string someString) :
base((someString ?? "").ToLower())
{
}
或使用 ternary operator
public ClassB(string someString) :
base(someString == null ? "" : someString.ToLower())
{
}
更好的是,我建议您向 ClassB
添加一个无参数构造函数,它将调用 base(string.Empty)
。
关于c# - 如何在 C# 中对继承的基构造函数执行操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2294739/