导入所有子类,如Java,但使用C#

导入所有子类,如Java,但使用C#,c#,C#,这是一个如此愚蠢的问题,但我想不出问谷歌的行话 在Java中,如果我想导入所有子类,我会使用 java.util.* 所有的util都将被导入 首先,对于我在C#中所做的事情,什么是合适的行话,这样我就可以更有效地开始使用谷歌了。我正在导入名称空间吗?图书馆?子类?(你看得出我是新来的吗?) 其次,既然我在这里,这是如何在C#中实现的 PS-我确实点击了stackOverflow向我提出的每个相关问题,看看答案是否会弹出。不走运。我简直无法用语言来描述我在寻找什么。这个例子应该很好,但是。。。

这是一个如此愚蠢的问题,但我想不出问谷歌的行话

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

java.util.*
所有的util都将被导入

首先,对于我在C#中所做的事情,什么是合适的行话,这样我就可以更有效地开始使用谷歌了。我正在导入名称空间吗?图书馆?子类?(你看得出我是新来的吗?)

其次,既然我在这里,这是如何在C#中实现的


PS-我确实点击了stackOverflow向我提出的每个相关问题,看看答案是否会弹出。不走运。我简直无法用语言来描述我在寻找什么。这个例子应该很好,但是。。。任何人都可以花点时间向我解释行话,或者简单地向我指出一些非常好的东西(简而言之,我有几本书可以长期使用)。

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

这种语言功能在c#中不可用


一点说明:名称空间可以分布在多个库中。因此,当您使用名称空间时,它可能会从多个引用的程序集引用它。

首先,让我们区分程序集引用名称空间

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

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

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

这就是
using
指令的作用。 不必一直写很长的名字,这只是语法上的甜点

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

System.Drawing.Imaging.BitmapData
因为这很烦人,而且会使代码膨胀,如果您使用

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

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


如果我误解了,请告诉我,我会尽力让你找到正确的方向。

你必须温习一下你的谷歌fu


它被称为
名称空间
,通过关键字
使用
导入。例如:

using System;
using System;
using System.Text;
此语句使您能够引用该命名空间中存在的所有类。但是,它们不允许您引用声明的
命名空间的子名称空间中的任何类。您必须分别声明每个
命名空间。例如:

using System;
using System;
using System.Text;

当然,您需要将适当的引用添加到使用
指令指定
的项目中。

您正在导入名称空间。在C#啊,好吧,没有这样的结构。所以我根据需要导入它们。嗯,这至少有助于更好的编码实践,尽管我有时喜欢作弊。。。只是为了检查我是否使用ExcelApi
code
做了类似于
code
的事情,但不包括使用ExcelApi.Utils
code
作为示例?我必须进行两次导入才能获得两个级别的名称空间?没错。。简单地说。。使用System和使用System.Web是不同的。你是我的英雄。万分感谢!不需要所有这些,我要10万:)哈哈。如果我能接受两个答案,我会点击那个复选框。你当然对我的私人秘书说得很好。再次感谢:-),谢谢。非常直截了当和深思熟虑的回答。另外,现在我知道了为什么在我的代码中使用
using
之前,我必须使用#develope中的reference thingy。再次感谢!