将对象X转换为继承X的对象Y.

时间:2012-12-20 08:53:08

标签: c# casting

我有一个X级的TcpClient和一个TcpListener。我想在调用AcceptTcpClient()时返回一个TcpClient,我会得到一个X类,或者能够将这个TcpClient“强制转换”到我的类X.

我不能做像(X)TcpClient这样的东西,所以我有点迷失。

1 个答案:

答案 0 :(得分:1)

那是不可能的。如果对象具有正确的运行时类型,则只能进行向下转换。

相反,您可以使用接受TcpClient的构造函数创建适配器,但随后添加其自己的功能。

class MyTcpClientAdapter
{
    private TcpClient tcpClient;

    public MyTcpClientAdapter(TcpClient tcpClient) {
        this.tcpClient = tcpClient;
    }

    // etc...
}