简体   繁体   English

有没有办法使派生类重写ToString()?

[英]Is there a way to make derived classes override ToString()?

(I'm working in .NET 4.0 beta, C#.) (我在.NET 4.0 beta,C#中工作。)

I have an interface, and all classes derived from this interface should implement custom ToString() logic. 我有一个接口,从这个接口派生的所有类都应该实现自定义ToString()逻辑。 Is that enforceable? 这可以强制执行吗? If so, how? 如果是这样,怎么样?

Not through an interface. 不是通过界面。

You'll need to use an abstract class for this. 您需要为此使用抽象类。

-- Edit - 编辑

You can just re-declare 'ToString' as abstract: 您可以将'ToString'重新声明为abstract:

abstract class Foo
{
    public override abstract string ToString ();
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM