我的编程空间,编程开发者的网络收藏夹
学习永远不晚

C# 中using的作用是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

C# 中using的作用是什么

本篇文章为大家展示了C# 中using的作用是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

C# using作用,微软MSDN上解释总共有三种用途

引用命名空间。2、为命名空间或类型创建别名。3、使用using语句。

引用命名空间,这样就可以直接在程序中引用命名空间的类型而不必指定详细的命名空间。

这个就不用说了吧,比如大家最常用的:usingSystem.Text;

为命名空间或类型创建别名:

当同一个cs引用了不同的命名空间,但这些命名控件都包括了一个相同名字的类型的时候,可以使用using关键字来创建别名,这样会使代码更简洁。注意:并不是说两个名字重复,给其中一个用了别名,另外一个就不需要用别名了,如果两个都要使用,则两个都需要用using来定义别名的。

usingSystem;  usingaClass=NameSpace1.MyClass;  usingbClass=NameSpace2.MyClass;  ......  //使用方式  aClassmy1=newaClass();  Console.WriteLine(my1);  bClassmy2=newbClass();  Console.WriteLine(my2);

使用using语句,定义一个范围,在范围结束时处理对象。(不过该对象必须实现了IDisposable接口)。其功能和try,catch,Finally完全相同。
比如:

using(SqlConnectioncn=newSqlConnection(SqlConnectionString)){......}//数据库连接  using(SqlDataReaderdr=db.GetDataReader(sql)){......}//DataReader

PS:这里SqlConnection和SqlDataReader对象都默认实现了IDisposable接口,如果是自己写的类,那就要自己手动来实现IDisposable接口。比如:

using(Employeeemp=newEmployee(userCode))  {  ......  }  Emlpoyee.cs类:  publicclassEmployee:IDisposable  {   实现IDisposable接口#region实现IDisposable接口  ///  ///通过实现IDisposable接口释放资源  ///  publicvoidDispose()  {  Dispose(true);  GC.SuppressFinalize(this);  }  ///  ///释放资源实现  ///  ///  protectedvirtualvoidDispose(booldisposing)  {  if(!m_disposed)  {  if(disposing)  {  //Releasemanagedresources  if(db!=null)  this.db.Dispose();  if(dt!=null)  this.dt.Dispose();  this._CurrentPosition=null;  this._Department=null;  this._EmployeeCode=null;   }  //Releaseunmanagedresources  m_disposed=true;  }  }  ///  ///析构函数  ///  ~Employee()  {  Dispose(false);  }  privateboolm_disposed;   #endregion  }

使用using语句需要注意的几点:

1、对象必须实现IDisposeable接口,这个已经说过,如果没有实现编译器会报错误。
如:

using(stringstrMsg="MyTest")   {  Debug.WriteLine(strMsg);//Can'tbecompiled   }

2、第二个using对象检查是静态类型检查,并不支持运行时类型检查,因此如下形式也会出现编译错误。

  1. SqlConnectionsqlConn=newSqlConnection(yourConnectionString);  

  2. objectobjConn=sqlConn;  

  3. using(objConn)  

  4. {  

  5. Debug .WriteLine(objConn.ToString());//Can'tbecompiled
    }

不过对于后者,可以通过“as”来进行类型转换方式来改进。

SqlConnectionsqlConn=newSqlConnection(yourConnectionString);  objectobjConn=sqlConn;  using(objConnasIDisposable)  {  Debug.WriteLine(objConn.ToString());  }

3、当同时需要释放多个资源时候,并且对象类型不同,可以这样写:

using(SqlConnectionsqlConn=newSqlConnection(yourConnectionString))  using(SqlCommandsqlComm=newSqlCommand(yourQueryString,sqlConn))  {  sqlConn.Open();//Openconnection  //OperateDBhereusing"sqlConn"  sqlConn.Close();//Closeconnection  }

如果对象类型相同,可以写到一起:

using(FontMyFont=newFont("Arial",10.0f),MyFont2=newFont("Arial",10.0f))  {  //useMyFontandMyFont2  }//compilerwillcallDisposeonMyFontandMyFont2

4、using关键字只是针对C#语句,对于VB等其他语言还没有对应的功能。

上述内容就是C# 中using的作用是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

C# 中using的作用是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

C# 中using的作用是什么

本篇文章为大家展示了C# 中using的作用是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。C# using作用,微软MSDN上解释总共有三种用途:1、引用命名空间。2、为命名空间或类型创建别名
2023-06-17

C# 中using关键字的作用是什么

今天就跟大家聊聊有关C# 中using关键字的作用是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。C# using关键字微软MSDN上解释总共有三种用途:1、引用命名空间,这样就
2023-06-18

C#中的using怎么用

这篇文章主要讲解了“C#中的using怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#中的using怎么用”吧!using的用法:1. using指令:引入命名空间这是最常见的用法,
2023-06-17

c#中using的用法

using 语句是一种资源管理机制,自动释放不再需要的资源。它首先创建和初始化资源,然后在作用域内使用资源,最后在离开作用域时自动释放资源。这简化了资源管理,防止了内存泄漏和资源泄漏。C# 中 using 的用法什么是 using 语句?
c#中using的用法
2024-05-15

c++中system的作用是什么

C++中的system函数是一个标准库函数,用于执行系统命令。它的作用是在程序中调用操作系统的命令行解释器(如Windows的cmd.exe或Linux的shell),并执行传递给该函数的命令。通过system函数,可以在C++程序中执行各
2023-08-09

C#中oledbparameter的作用是什么

C#中的OleDbParameter是用于向数据库传递参数的对象。它可以用于构建包含参数的SQL语句或存储过程,以确保在与数据库交互过程中的安全性和性能。 OleDbParameter对象可以将参数值传递给数据库,并且可以设置参数的数据类型
2023-08-08

c++中static的作用是什么

在C++中,`static`关键字有以下几种作用:1. 静态变量:在函数内部声明的静态变量在程序运行期间只被初始化一次,并且在函数运行结束后仍然保留其值,下次再调用该函数时将继续使用上次的值。```cppvoid func() {stati
2023-10-12

C#中domainUpDown的作用是什么

在C#中,DomainUpDown控件用于显示一个包含预定义项集合的旋转列表。它允许用户在列表中选择一个项,并且可以通过上下箭头按钮来选择前一个或后一个项。DomainUpDown控件通常用于允许用户在有限的选项集合中进行选择,而不需要额
C#中domainUpDown的作用是什么
2023-10-28

c#中isassignablefrom的作用是什么

IsAssignableFrom 方法是Type类的一个成员方法,用于检查一个类型是否可以赋值给另一个类型。具体来说,它接收一个Type对象作为参数,并返回一个布尔值,表示传入的类型是否可以从该Type对象所表示的类型分配。这个方法通常用
c#中isassignablefrom的作用是什么
2024-03-14

oracle中using的使用方法是什么

在Oracle中,USING 是用于连接两个表并指定连接条件的关键字。使用 USING 可以简化连接表的语法,并且只能连接那些具有相同名称的列的表。以下是一个示例:SELECT *FROM table1JOIN table2USIN
oracle中using的使用方法是什么
2024-04-22

C#中 ReaderWriterLock的作用是什么

这篇文章将为大家详细讲解有关C#中 ReaderWriterLock的作用是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Performance非常差UpgradeToWriterLoc
2023-06-17

C#中AttributeUsage的作用是什么

AttributeUsage是一个特性类(Attribute Class),它用于指定自定义特性(Custom Attribute)可以应用的目标元素(Target Element)以及如何使用它们。AttributeUsage类的作用有
2023-10-24

C++中resumethread的作用是什么

C++中的`ResumeThread`函数用于恢复一个被暂停的线程的执行。当一个线程被创建后,默认情况下它是处于就绪状态,可以被调度执行。通过调用`SuspendThread`函数,可以将一个线程暂停,使其暂时停止执行。而`ResumeT
C++中resumethread的作用是什么
2023-10-28

c++中setprecision的作用是什么

在C++中,setprecision()函数用于设置浮点数输出的精度。它是由库中的头文件提供的。具体来说,setprecision(n)函数用于设置浮点数的小数位数为n位。这意味着在输出浮点数时,最多显示n位小数。如果小数位数不足n位,则
c++中setprecision的作用是什么
2023-10-28

C#中notifyicondata的作用是什么

NotifyIconData类是C#中用于操作系统通知区域图标(也称为托盘图标)的类。它提供了一组属性和方法,用于设置和管理通知图标的显示、行为和事件。NotifyIconData类的作用包括:设置通知图标的图标、标题、提示文本等属性。
C#中notifyicondata的作用是什么
2024-02-29

c++中async的作用是什么

在C++中,async是一个用来创建异步任务的函数模板。它的作用是创建一个异步任务,并返回一个std::future对象,用来获取异步任务的执行结果。通过async函数,可以在一个单独的线程中执行一段代码,而不会阻塞当前线程的执行。这样可
c++中async的作用是什么
2024-03-06

c#中internal的作用是什么

在C#中,internal关键字用于限制访问级别,表示只能在同一个程序集(assembly)内部访问该成员或类型。换句话说,internal成员可以被同一程序集中的任何类访问,但不能被其他程序集中的类访问。这使得internal成员在模块化
c#中internal的作用是什么
2024-03-02

c#中obsolete的作用是什么

在C#中,[Obsolete] 属性用于标记某个成员(方法、属性、字段等)已过时,即不推荐使用。当代码中调用了被标记为[Obsolete]的成员时,编译器会发出警告或错误信息,提醒开发者使用更合适的替代方法或成员。[Obsolete] 属
c#中obsolete的作用是什么
2024-04-09

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录