第二次在c#中调用构造函数
发布时间:2020-12-15 18:00:45 所属栏目:百科 来源:网络整理
导读:是否可以再次调用构造函数,如下所示: public ClassName(){ Value = 10;}public void Reset(){ // Reset ClassName();} 或者这是唯一的方法: public ClassName(){ Reset();}public void Reset(){ // Reset Value = 10;} 解决方法 可以使用Reflection多次调
是否可以再次调用构造函数,如下所示:
public ClassName() { Value = 10; } public void Reset() { // Reset ClassName(); } 或者这是唯一的方法: public ClassName() { Reset(); } public void Reset() { // Reset Value = 10; } 解决方法
可以使用Reflection多次调用构造函数,因为构造函数是一种特殊方法,因此可以将其称为方法.
public void Reset() { this.GetType().GetConstructor(Type.EmptyTypes).Invoke(this,new object[] { }); } 汉斯:这不是你应该怎么做的.如果你想将对象重置为某些默认设置,只需为它做一些辅助,私有方法,也可以从构造函数调用: public ClassName() { Defaults(); } public void Reset() { Defaults(); } private void Defaults() { Value = 10; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |