c# using语句的用法

 我来答
世纪网络17
2022-11-18 · TA获得超过5944个赞
知道小有建树答主
回答量:2426
采纳率:100%
帮助的人:141万
展开全部

  在net中有一个至关重要的关键字 那就是using

  using一般有着以下几种用法

   直接引入命名空间

  a using System 这个是最常用的 就是using+命名空间 这样就可以直接使用命名空间中的类型 而免去了使用详细的命名空间

  b 使用全限定名

  不用使用using System;直接在程序中调用System Console WriteLine( Hello C# );

  第一种方法是比较常用的方法 可以一次导入整个命名空间到当前命名空间 比较方便

  不过如果在当前命名空间只使用一次命名空间中的某个类 例如上例使用全限定名也是合适的

  不过在某些情况下必须使用全限定名 比如在引入的两个以上的命名空间中有重名的类 例如System下有一个Console类 在另一个自定义的命名空间MyNamespace中也有一个同名的Console类 这时如果我们在第三个命名空间中同时引入了System和MyNamespace 这时如果要使用某一个具体的Console就需要使用权限定名System Console 或 MyNamespace Console 否则编译器不知道我们具体使用哪一个Console 编译无法通过

   using别名 using + 别名 = 包括详细命名空间信息的具体的类型

  例如我们用以下语句引入System IO Compression命名空间

  using Zip=System IO Compression;

  这时我们就可以用Zip表示System IO Compression命名空间 使用Zip GZipStream就是使用System IO Compression GZipStream 给程序书写带来方便

  这种做法有个好处就是当同一个cs引用了两个不同的命名空间 但两个命名空间都包括了一个相同名字的类型的时候 当需要用到这个类型的时候 就每个地方都要用详细命名空间的办法来区分这些相同名字的类型 而用别名的方法会更简洁 用到哪个类就给哪个类做别名声明就可以了 注意 并不是说两个名字重复 给其中一个用了别名 另外一个就不需要用别名了 如果两个都要使用 则两个都需要用using来定义别名的

  例如

using System;using aClass = NameSpace MyClass;using bClass = NameSpace MyClass;

namespace NameSpace {public class MyClass {public override string ToString() {return You are in NameSpace MyClass ;}}}

namespace NameSpace {class MyClass {public override string ToString() {return You are in NameSpace MyClass ;}}}

namespace testUsing{using NameSpace ;using NameSpace ;/// /// Class 的摘要说明 /// class Class {/// /// 应用程序的主入口点 /// [STAThread]static void Main(string[] args){//// TODO: 在此处添加代码以启动应用程序//

aClass my = new aClass(); Console WriteLine(my );bClass my = new bClass();Console WriteLine(my );Console WriteLine( Press any key );Console Read();}}}

   using语句 定义一个范围 在范围结束时处理对象

  场景

  当在某个代码段中使用了类的实例 而希望无论因为什么原因 只要离开了这个代码段就自动调用这个类实例的Dispose 要达到这样的目的 用try catch来捕捉异常也是可以的 但用using也很方便

  例如

using (Class cls = new Class () cls = new Class ()){// the code using cls cls

} // call the Dispose on cls and cls

lishixinzhi/Article/program/net/201311/15256

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式