0

我有一个这样的基类:

using System.Data;
public class A
{
    .....
}

我在B类中继承了上面的类。我需要在using System.Data这里再次声明吗?

using System.Data; 
public class B: A
{
   .....
}

提前致谢。

4

2 回答 2

6

是的,假设您遵循 C# 的每个文件一个类的准则,您会这样做。using-directive 是针对每个源代码文件的,不会被继承或以其他方式跨文件边界传输:

引用自MSDN

using 指令的范围仅限于它出现的文件。

于 2013-09-12T04:55:56.593 回答
2

using指令与继承无关。它们是编译器在解析 cs 文件时的提示,并且仅在该文件的上下文中有效。

例如,如果您在不同的 cs 文件中定义了类,则需要using在每个文件中都有一个指令,如下所示:

A.cs

using System.Data; 
public class A
{
   .....
}

B.cs

using System.Data; 
public class B: A
{
   .....
}

但是如果你已经在一个单独的 cs 文件中声明了它们,你只需要一个:

我的类.cs

using System.Data; 
public class A
{
   .....
}

public class B: A
{
   .....
}

还应注意,using仅当在该文件中使用类(或扩展方法)并且不想使用该类的完全限定名称时才需要指令。

于 2013-09-12T04:55:04.400 回答