C#用什么指令导入命名空间
答案:6 悬赏:50
解决时间 2021-02-24 04:18
- 提问者网友:心裂
- 2021-02-23 03:52
C#用什么指令导入命名空间
最佳答案
- 二级知识专家网友:飘零作归宿
- 2021-02-23 04:24
C#中的类是利用命名e68a843231313335323631343130323136353331333264643732空间组织起来的。命名空间提供了一种从逻辑上组织类的方式,防止命名冲突。
命名空间声明
用namespace 关键字用于声明一个命名空间。此命名空间范围允许您组织代码并为您提供了创建全局唯一类型的方法。
namespace name
{
类型定义
}
其中:在命名空间中,可以声明类、接口、结构、枚举、委托 命名空间。
如果未显式声明命名空间,则会创建默认命名空间。该默认的命名空间(有时称为全局命名空间)。全局命名空间中的任何标识符都可用于命名的命名空间中。
命名空间声明可以作为顶级声明出现在编译单元中,当命名空间声明作为顶级声明出现在编译单元中时,该命名空间成为全局命名空间的一个成员。
命名空间声明出现在另一个命名空间声明内时,该内部命名空间就成为包含着它的外部命名空间的一个成员。
无论是何种情况,一个命名空间的名称在它所属的命名空间内必须是唯一的。命名空间隐式地为 public,而且在命名空间的声明中不能包含任何访问修饰符。
嵌套的命名空间
命名空间声明中声明命名空间,各命名空间用”.”分隔。
例如:
namespace N1.N2
{
class A {}
class B {}
}
在语义上等效于
namespace N1
{
namespace N2
{
class A {}
class B {}
}
}
引用类
引用一个类可以用完全限定名来限定引用类(类名前加上命名空间名),以防止命名冲突。
using 指令来导入其他命名空间和类型的名称,直接地而不是通过限定名来引用它们。
Using指令
using 别名指令为一个命名空间或类型启用一个别名。
using 命名空间指令用于导入一个命名空间的类型成员。
(1) using 命名空间指令将一个命名空间中所包含的类型导入到编译单元或命名空间体中,从而可以直接使用这些被导入的类型的标识符而不必加上它们的限定名。
如:
namespace N1.N2
{
class A {}
}
namespace N3
{
using N1.N2;
class B
{
public static void Main()
{
A a=new A();
}
}
}
上面的示例中,在 N3 命名空间中N1.N2 的类型成员是直接可用的,不需要完全限定名.
(2)using 命名空间指令导入包含在给定命名空间中的类型,但要注意,它不导入嵌套的命名空间。
示例:
namespace N1.N2
{
class A {}
}
namespace N3
{
using N1;
class B
{
public static void Main()
{
A a=new A(); //错误,N1.N2命名空间中的类型没有导入到命名空间N3中
}
}
}
(3)using 命名空间指令导入的名称会被编译单元或命名空间体中具有相同名称的成员所隐藏。
例如:
namespace N1.N2
{
class A {}
class B {}
}
namespace N3
{
using N1.N2;
class A {}//N3.A
}
在 N3 命名空间中的A类与N1.N2命名空间中的A类名称相同,则N1.N2.A被N3.A隐藏,A 引用 N3.A 而不是 N1.N2.A。
(4)同一编译单元或命名空间体中的 using 命名空间指令导入多个命名空间时,如果它们所包含的类型中有重名的,则直接引用该名称就被认为是不明确的。
示例:
namespace N1
{
class A {}
}
namespace N2
{
class A {}
}
namespace N3
{
using N1;
using N2;
class B
{
public static void Main()
{
A a=new A()// 错误A类明确,要使用完全限定名
}
}
}
N1 和 N2 都包含一个成员 A,而由于 N3 将两者都导入,所以在 N3 中引用 A 会导致一个编译时错误名称冲突.
using 别名指令用于为一个命名空间或类型指定一个别名。
using 标识符 = 命名空间或类型名称 ;
例如:
namespace N1.N2
{
class A {}
}
namespace N3
{
using A = N1.N2.A;
class B: A {}
}
上面的示例中,在 N3 命名空间中,A 是 N1.N2.A 的别名,因此类 N3.B 从类 N1.N2.A 派生。通过为 N1.N2 创建别名 R 然后引用 R.A 可以得到同样的效果:
namespace N3
{
using R = N1.N2;
class B: R.A {}
}
using 别名指令中的别名在直接包含该 using 别名指令的编译单元或命名空间的声明空间内必须是唯一的。例如:
namespace N3
{
class A {}
}
namespace N3
{
using A = N1.N2.A; // 错误,命名冲突
}
上例中,N3 已包含了成员 A,因此 using 别名指令使用 A 作标识符会导致一个编译时错误。
另外,站长团上有产品团购,便宜有保证
命名空间声明
用namespace 关键字用于声明一个命名空间。此命名空间范围允许您组织代码并为您提供了创建全局唯一类型的方法。
namespace name
{
类型定义
}
其中:在命名空间中,可以声明类、接口、结构、枚举、委托 命名空间。
如果未显式声明命名空间,则会创建默认命名空间。该默认的命名空间(有时称为全局命名空间)。全局命名空间中的任何标识符都可用于命名的命名空间中。
命名空间声明可以作为顶级声明出现在编译单元中,当命名空间声明作为顶级声明出现在编译单元中时,该命名空间成为全局命名空间的一个成员。
命名空间声明出现在另一个命名空间声明内时,该内部命名空间就成为包含着它的外部命名空间的一个成员。
无论是何种情况,一个命名空间的名称在它所属的命名空间内必须是唯一的。命名空间隐式地为 public,而且在命名空间的声明中不能包含任何访问修饰符。
嵌套的命名空间
命名空间声明中声明命名空间,各命名空间用”.”分隔。
例如:
namespace N1.N2
{
class A {}
class B {}
}
在语义上等效于
namespace N1
{
namespace N2
{
class A {}
class B {}
}
}
引用类
引用一个类可以用完全限定名来限定引用类(类名前加上命名空间名),以防止命名冲突。
using 指令来导入其他命名空间和类型的名称,直接地而不是通过限定名来引用它们。
Using指令
using 别名指令为一个命名空间或类型启用一个别名。
using 命名空间指令用于导入一个命名空间的类型成员。
(1) using 命名空间指令将一个命名空间中所包含的类型导入到编译单元或命名空间体中,从而可以直接使用这些被导入的类型的标识符而不必加上它们的限定名。
如:
namespace N1.N2
{
class A {}
}
namespace N3
{
using N1.N2;
class B
{
public static void Main()
{
A a=new A();
}
}
}
上面的示例中,在 N3 命名空间中N1.N2 的类型成员是直接可用的,不需要完全限定名.
(2)using 命名空间指令导入包含在给定命名空间中的类型,但要注意,它不导入嵌套的命名空间。
示例:
namespace N1.N2
{
class A {}
}
namespace N3
{
using N1;
class B
{
public static void Main()
{
A a=new A(); //错误,N1.N2命名空间中的类型没有导入到命名空间N3中
}
}
}
(3)using 命名空间指令导入的名称会被编译单元或命名空间体中具有相同名称的成员所隐藏。
例如:
namespace N1.N2
{
class A {}
class B {}
}
namespace N3
{
using N1.N2;
class A {}//N3.A
}
在 N3 命名空间中的A类与N1.N2命名空间中的A类名称相同,则N1.N2.A被N3.A隐藏,A 引用 N3.A 而不是 N1.N2.A。
(4)同一编译单元或命名空间体中的 using 命名空间指令导入多个命名空间时,如果它们所包含的类型中有重名的,则直接引用该名称就被认为是不明确的。
示例:
namespace N1
{
class A {}
}
namespace N2
{
class A {}
}
namespace N3
{
using N1;
using N2;
class B
{
public static void Main()
{
A a=new A()// 错误A类明确,要使用完全限定名
}
}
}
N1 和 N2 都包含一个成员 A,而由于 N3 将两者都导入,所以在 N3 中引用 A 会导致一个编译时错误名称冲突.
using 别名指令用于为一个命名空间或类型指定一个别名。
using 标识符 = 命名空间或类型名称 ;
例如:
namespace N1.N2
{
class A {}
}
namespace N3
{
using A = N1.N2.A;
class B: A {}
}
上面的示例中,在 N3 命名空间中,A 是 N1.N2.A 的别名,因此类 N3.B 从类 N1.N2.A 派生。通过为 N1.N2 创建别名 R 然后引用 R.A 可以得到同样的效果:
namespace N3
{
using R = N1.N2;
class B: R.A {}
}
using 别名指令中的别名在直接包含该 using 别名指令的编译单元或命名空间的声明空间内必须是唯一的。例如:
namespace N3
{
class A {}
}
namespace N3
{
using A = N1.N2.A; // 错误,命名冲突
}
上例中,N3 已包含了成员 A,因此 using 别名指令使用 A 作标识符会导致一个编译时错误。
另外,站长团上有产品团购,便宜有保证
全部回答
- 1楼网友:社会水太深
- 2021-02-23 07:14
imports
- 2楼网友:一起来看看吧
- 2021-02-23 06:22
using啊
- 3楼网友:偏爱自由
- 2021-02-23 05:29
using
例如:using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
- 4楼网友:24K纯糖
- 2021-02-23 04:52
1 using system.collections.generic;和using system.collections;的区别?
第一个是引用using system.collections下面的generic类,如果generic类下面有a类型 b类型的话 你直接输入a或者b就是默认是generic下面的。如果你只引用了using system.collections;却想用generic下面的a或b的话,只能多输入一下generic.a或generic.b
2 using system .text的作用
它引用的text的命名空间里面的所有类,比如正则表达式和stringbuild等等,如果你不引用它,你要是用正则的话,只能在手动输入system .text.正则类 等等。
3 using system;这里的system指的是什么?
system是个基类,上面的collections、text类,都是包含在system类里面的。
- 5楼网友:时光挺欠揍
- 2021-02-23 04:30
这个需2113要手动导入,5261用using关键字的,后面4102加入你想要导1653入的命名版空间即可,例如权:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯