有多少覆盖可以在自定义类的字符串方法?



是否可以在类中为ToString()方法重写几个而不是一个?

我有一个项目,将使用ToString()方法,取决于搜索的结果集。

是否可以在类中为ToString()方法重写几个而不是一个?

这取决于

你的意思是"重载"在这种情况下,当然-可以为一个方法创建尽可能多的变体,但它们必须具有不同的签名(参数的数量/类型/类型顺序的唯一组合)

或者你的意思是"覆盖";在这种情况下,只有在基类中有合适的方法可以重写时才能这样做。如果你的类继承自object,那么不是;对象只有一个可重写的ToString。你可以重载ToString的其他变体,但它们不会被重载

No。重载必须在签名上有所不同,在这种情况下没有什么可改变的,因为函数没有任何参数。

如果您有多个相同的toString函数,编译器如何知道您打算调用哪个?

最新更新