2009-09-06 63 views
1

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

当你写:

using System.Web.UI;

是考虑从类继承?

回答

7

using指令

using X.Y.Z; 

仅意味着,如果一个标识符不在本地名称空间,名称空间X.Y.Z将搜索的结果的标识符,以及。这可以让你的代码更具代表性,例如,如果你有using System.IO.Path,那么你不必做System.IO.Path.Combine()。我不相信您可以拥有多少个using陈述。

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

+0

使用命名空间指令只能应用于命名空间; 'System.IO.Path'是一个不是名称空间的类型 – manji 2009-09-06 22:10:21

3

您只能从一个类继承。

写'使用System.Web.UI'与继承无关。 此声明仅表示您要'使用'名称空间System.Web.UI中的类,以便您可以直接编写类名,而不必使用名称空间名作为前缀。

7

没有,

一个using directive让你没有当您添加控件或类代码中键入完全合格的命名空间。

举例来说,如果我补充一下:

using System.Web.UI; 

然后,我可以简单的写:

Page.Something 

相反的:

System.Web.UI.Page.Something 

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

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

1

No.

  1. using使得外部定义的类可见
  2. class Cat : Animal限定从Animal

C#中的类Pet即导出(继承),不同于C++,不支持多重继承,因此只能得到它(但是,您可以实现任意数量的接口)

1

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