像Java一样导入所有的子类,但是使用c#

  • 本文关键字:子类 Java 导入 一样 c#
  • 更新时间 :
  • 英文 :


这是一个如此愚蠢的问题,但我不知道该怎么问谷歌。

在Java中,如果我想导入所有子类,我会使用

java.util.*

所有util将被导入。

首先,我在c#中所做的事情的适当术语是什么,以便我可以开始更有效地使用Google。我是否正在导入名称空间?库吗?子类?(你能看出我是新手吗?)

其次,既然我在这里,这是如何在c#中完成的?

PS-我确实点击了stackOverflow扔给我的每个相关问题,看看答案是否会弹出。没有运气。我简直无法用语言来描述我在寻找什么。这个例子应该做得很好,但是……谁能花点时间给我解释一下行话,或者只是给我指出一些可以(简而言之,我有几本长期的书)的东西,那就太好了。

首先,我们区分汇编引用命名空间

程序集是你在c#项目中添加引用的东西,它们是包含你需要的实际类的库,通常作为DLL文件找到。.net框架包含许多这样的程序集,Visual Studio将尝试在你的项目中引用最常用的程序集(例如,对于WinForms项目,它会自动添加对System.Drawing.dll的引用)。

命名空间是程序集中类的逻辑分区。

在项目中引用程序集后,如果提供其全名,则所有命名空间中的所有类都可以使用。

这就是using指令出现的地方。这只是语法糖,不用一直写很长的名字。

例如,假设您的项目引用System.Drawing.dll程序集,则必须使用该程序集的全名来限定类,例如

System.Drawing.Imaging.BitmapData

因为这很烦人并且使代码膨胀,所以如果您以

开始您的.cs文件
using System.Drawing.Imaging;
然后,您可以仅使用名称BitmapData实例化一个类。这只适用于添加了using指令的.cs文件,而不适用于整个项目。另外,需要注意的是,using一个名称空间并没有引入所有嵌套的名称空间,您必须单独using每个名称空间。

你必须温习一下你的Google-fu

http://www.harding.edu/fmccown/java_csharp_comparison.html名称空间

可以称为导入/引用/使用命名空间

c#中没有这样的语言特性。

一点解释:名称空间可以分布在多个库中。因此,当您使用一个命名空间时,它可以从多个引用程序集引用它。

它被称为namespace,它是通过关键字using导入的。例如:

using System;

该语句允许您引用该命名空间中存在的所有类。但是,它们不允许您引用已声明的namespace的子名称空间中的任何类。您必须分别申报每个namespace。例如:

using System;
using System.Text;

当然,您需要在指定using指令的项目中添加适当的引用。

在。net中,您首先需要确保存在包含您想要导入的名称空间的引用程序集。一旦该引用存在,就可以使用'using'指令将该命名空间引入类中,这样就不必完全限定所有对象名称。您可以在MSDN上找到有关此指令的更多信息。

如果我误解了,让我知道,我会尽我最大的努力为你指出正确的方向。

最新更新