如何使用扩展方法覆盖Object.ToString()方法?

JSJ*_*JSJ 2 .net c#

所述object.ToString()方法用于任何对象转换为可读文本的字符串.但是如果对象是null,它会抛出一个NullReferenceError.所以我想ToString()用扩展方法覆盖这个方法,如:

public static class StringExt
{
    public string ToString(this object str)
    {           
        if (str == null)
            return System.Convert.ToString(str);

        return str.ToString();
    }
}
Run Code Online (Sandbox Code Playgroud)

但似乎这样从来没有覆盖ToString()的的Object类.

Myclass cls;
//doing something on the other hand. 

cls.ToString();
Run Code Online (Sandbox Code Playgroud)

这里cls.ToString()总是使用Object.ToString()方法.有没有办法实现这个目标?

SLa*_*aks 17

扩展方法故意不能取代实例方法.

您需要使用其他名称.