继承自类

时间:2009-09-06 20:38:52

标签: c# inheritance using-directives

在C#中,你可以继承多少个类?

当你写:

  

using System.Web.UI;

是否被认为是继承自一个类?

5 个答案:

答案 0 :(得分:7)

使用指令

using X.Y.Z;

仅表示如果标识符不在本地名称空间中,则还将搜索名称空间X.Y.Z以查找该标识符。这使您可以拥有一些更简洁的代码,因此,如果您拥有System.IO.Path.Combine(),则不必执行using System.IO.Path。我不相信你可以有多少using个陈述有限制。

C#不允许多重继承 - 您只能从一个类继承。但是,您可以根据需要实现任意数量的接口。

答案 1 :(得分:7)

没有

using directive允许您在向代码添加控件或类时不必键入完全限定的命名空间。

例如,如果我添加:

using System.Web.UI;

然后我可以简单地写一下:

Page.Something

而不是:

System.Web.UI.Page.Something

<强>继承
您只能inherit from one class,但可以根据需要实施尽可能多的Interfaces

如果我的所有页面都从基类继承,那么该基类将需要从Page类继承,以便它可以做任何好事。

答案 2 :(得分:3)

您只能从一个类继承。

使用System.Web.UI'编写'与继承无关。 此语句只是意味着您要“使用”命名空间System.Web.UI中的类,以便您可以直接编写类名,而不是使用命名空间名称作为前缀。

答案 3 :(得分:1)

没有

  1. using使外部定义的类可见
  2. class Cat : Animal定义从Pet
  3. 派生(继承)的类Animal 与C ++不同,C#不支持多重继承,因此您只能从一个类派生它(但是,您可以实现任意数量的接口)

答案 4 :(得分:1)

我想在Jen的答案中添加一个附录。说C#不支持多重继承是正确的,但知道你可以通过忽略CLS(命令语言子系统)在.NET中实现多重继承是有用的。这是令人讨厌的工作,并且涉及到你自己的vtable,但它是可能的。