|
|
1
12
还有一种更优雅的方式。您可以利用这样一个事实,即泛型基类中的静态对于不同类型的每个派生类都是不同的
对于每个子类,静态int x对于每个唯一的T都是唯一的
现在,静态MyProperty对于ChildA和ChildB都是唯一的
|
|
|
2
6
实际上并没有一种内置的方法来实现这一点,因为您在这里有点违反了基本的OO原则。在传统的面向对象理论中,您的基类应该不了解子类。 也就是说,如果您必须这样做,您的实现可能与您将获得的一样好,除非您可以直接向子类添加一些其他信息。如果您需要控制它,并且无法更改子类,那么这可能是您最好的方法。 |
|
3
2
这与您要求的有点不同,但可能实现了相同的目标。
|
|
4
0
有一种替代解决方案可能比您的好,也可能不比您的好,具体取决于用例:
|
|
|
5
0
这个怎么样?
界面会更好。 |
|
|
6
-1
简单的解决方法:只需使用“新”一词。
结果是:
或者您可以使用属性:
或函数(但记住在变量和函数中都添加“new”):
|
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |