当前位置: 首页 > 编程日记 > 正文

.net 中 using的几种用法

1. using指令。using + 命名空间名字,这样可以在程序中直接用命令空间中的类型,而不必指定类型的详细命名空间,类似于Java的import,这个功能也是最常用的,几乎每个cs的程序都会用到。

例如:using System; 一般都会出现在*.cs中。

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

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

例如:

using System;
using aClass = NameSpace1.MyClass;
using bClass = NameSpace2.MyClass;

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

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

namespace testUsing
{
    using NameSpace1;
    using NameSpace2;
    /** <summary>
    /// Class1 的摘要说明。
    /// </summary>
    class Class1
    {
        /** <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main(string[] args)
        {
            //
            // TODO: 在此处添加代码以启动应用程序
            //
             
            aClass my1 = new aClass();             
            Console.WriteLine(my1);
            bClass my2 = new bClass();
            Console.WriteLine(my2);
            Console.WriteLine("Press any key");
            Console.Read();
        }
    }
}

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

场景:

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

例如:

using (Class1 cls1 = new Class1(), cls2 = new Class1())
{
  // the code using cls1, cls2
  
} // call the Dispose on cls1 and cls2

这里触发cls1和cls2的Dispose条件是到达using语句末尾或者中途引发了异常并且控制离开了语句块。

相关文章:

少走弯路的10条忠告

如何在涉世之初少走弯路&#xff0c;有一个好的开端&#xff0c;开始一番成功的事业&#xff1f;以下是一些先行者积累的10条有益的涉世忠告。好好地遵循、把握这些忠告和建议吧&#xff0c;比起所学的课堂课程来&#xff0c;它毫不逊色&#xff01; 1. 买个闹钟&#xff0c;以…

linux实战考试题:批量创建用户和密码(不能使用循环)

批量创建10个用户&#xff0c;并且设置随机8位密码&#xff0c;要求不能用shell的循环&#xff08;例如&#xff1a;for,while等&#xff09;&#xff0c;只能用linux命令及管道实现。方法1&#xff1a;[rootoldboy /]# echo stu{01..10}|tr " " "\n"|sed …

路径,文件,目录,I/O常见操作汇总

摘要: 文件操作是程序中非常基础和重要的内容&#xff0c;而路径、文件、目录以及I/O都是在进行文件操作时的常见主题&#xff0c;这里想把这些常见的问题作个总结&#xff0c;对于每个问题&#xff0c;尽量提供一些解决方案&#xff0c;即使没有你想要的答案&#xff0c;也…

Winform开发的界面处理优化

在Winform开发中&#xff0c;客户体验是个很好的参考性指标&#xff0c;如果一个功能使用的时候感觉很流畅&#xff0c;说明我们的程序执行效率还不错&#xff0c;但是随着数据的真多&#xff0c;原先可能流程的地方可能会变得比较卡&#xff0c;这时候就需要追本索源&#xff…

人工智能语音技术支持“多情感程度”调节,细腻演绎“人声”

近期&#xff0c;微软发布最新语音技术&#xff0c;支持“情感程度”轻松调节&#xff0c;令智能语音的情感表现力更加细腻可控。 人类的情感很大程度上体现于语音语调的微妙变化&#xff0c;比如一句“再见”&#xff0c;有时是平静而含蓄的&#xff0c;有时是开心而轻松的&a…

HDU 1431 素数回文

有人问我这个问题。个人感觉暴搜会TLE O(n*sqrt(n))。n100000000&#xff1b;&#xff08;推断素数用2~sqrt(n)1 去除&#xff09; 还是枚举好了。枚举 1~10000&#xff0c;把他每一位存下来&#xff0c;回文数已知 left 。求 right &#xff0c;然后组合起来。比如 1 &#xf…

递归的妙用—遍历子控件

我们在ASP.NET编程中, 经常需要遍历一个Web控件的子控件 &#xff0c;找到所需的控件并获取控件中相应的值。以前我都是采用循环的方式遍历子控件&#xff0c;但当子控件是复杂的树形结构&#xff0c;比如&#xff1a;子控件也有子控件&#xff0c;子控件的子控件也有子控件。这…

【原创】关于代码质量的打油诗

要想代码写得好&#xff0c;以下规则供参考&#xff1a;代码格式规范多&#xff0c;静态检查常做到。代码注释要工整&#xff0c;垃圾注释不可要。重要分支详注释&#xff0c;复杂逻辑拆分细。数据类型多注意&#xff0c;经常判空习惯好。常量类型须定义&#xff0c;魔幻数字要…

Java 开发技巧详细知识体系总结

本篇文章是我们整理的一份架构师的成长路线&#xff0c;包括了并发编程、设计模式、常用框架、中间件、微服务与分布式、常用工具、JVM、MySQL、数据结构与算法&#xff0c;还有架构师精选视频、架构师成长路线高清大图。又是新的一年&#xff0c;每一年都会有人在成为架构师的…

23-hadoop-hive的DDL和DML操作

跟mysql类似, hive也有 DDL, 和 DML操作 数据类型: https://cwiki.apache.org/confluence/display/Hive/LanguageManualDDL : primitive_type| array_type| map_type| struct_type| union_type -- (Note: Available in Hive 0.7.0 and later) primitive_type为基本类型, 包括:…

经典正则表达式

正则表达式用于字符串处理&#xff0c;表单验证等场合&#xff0c;实用高效&#xff0c;但用到时总是不太把握&#xff0c;以致往往要上网查一番。我将一些常用的表达式收藏在这里&#xff0c;作备忘之用。本贴随时会更新。 匹配中文字符的正则表达式&#xff1a; [/u4e00-/u9…

腾讯云TDSQL数据库核心技术理论取得进展 ,同时发布数据异常检测工具

近日&#xff0c;腾讯云和中国人民大学在数据库基础研究上有了进展&#xff0c;聚焦在“数据异常”领域&#xff0c;这是数据库可串行化理论体系中的重要概念。 数据异常是打开并发访问控制技术大门的金钥匙。在数据库行业中&#xff0c;以往只发现了10多种数据异常现象&#…

Android应用工程文件组成

src目录&#xff1a;java代码源文件。gen目录&#xff1a;R.java&#xff1a;静态内部类&#xff0c;系统自动生成&#xff0c;无需程序员维护。assets目录&#xff1a;资源目录&#xff0c;html&#xff0c;多媒体文件。bin目录&#xff1a;应用程序所生成的apk。res目录&…

matlab2014a + win764bit + vs2013混合编程(.m转成dll供C++调用)

在matlab中可以通过mbuild工具将.m文件编译成dll文件供外部的C程序调用&#xff0c;这样就可以实现matlab和C混合编程的目的。 1. 使用matlab生成dll文件 1.1 首先需要带有mcc编译器的matlab软件&#xff0c;这个可以通过在matlab命令行中输入&#xff1a;!mcc命令来查看 1.2…

当前日期得到本周的开始和结束日期

/// <summary> /// 本周起止时间 /// </summary> /// <param name"dt"></param> /// <returns></returns> private string weekrange(System.DateTime dt) { int weeknow Convert.ToInt32(dt.DayOfWeek); int day…

分享一个mysql 复杂查询的例子

发布&#xff1a;脚本学堂/MySQL 编辑&#xff1a;thebaby 2013-08-23 09:37:37 【大 中 小】 有关mysql复杂查询的一个例子&#xff0c;正在学习mysql的朋友&#xff0c;可以作为一个参考。在mysql中&#xff0c;LOCATE(dmin,email)1 表示dmi字符在email字符中出现的索引位…

百度携手同济大学,瞄准AI、智慧交通等核心科技领域攻关

4月14日&#xff0c;百度与同济大学在上海举行了战略合作框架协议签约仪式。百度与同济大学将围绕人工智能、智慧交通等方面&#xff0c;共同开展科研攻关&#xff0c;创造AI技术及产业交流平台、搭建AI应用人才培养机制&#xff0c;力争取得基础理论和关键核心技术的突破。 签…

怎样做才是最优雅方式切换 web 项目数据源 ?

随着业务变迁/需求变更&#xff0c;JavaEE 应用中会被迫连接多个数据源进行业务处理。 怎样在不影响原有项目结构的情况下&#xff0c;已最优雅/最简洁的方式动态切换数据源呢&#xff1f; 本文已一次添加数据源后动态切换实践为例&#xff0c;描述整个思考和实践过程&#xff…

C#开发编码规范

C#开发编码规范 注记&#xff1a;Pascal 大小写形式——所有单词第一个字母大写&#xff0c;其他字母小写。Camel 大小写形式——除了第一个单词&#xff0c;所有单词第一个字母大写&#xff0c;其他字母小写。类名使用Pascal大小写形式 public class HelloWorld{ …}方法使用…

【原创】如何分析一个网站使用的服务器类型

如何知道一个网站使用的是什么类型的服务器呢&#xff1f;如其前端使用的是apache呢还是iis呢还是nginx呢还是其他呢&#xff1f;中间件使用的是什么呢&#xff1f;有以下几种方法&#xff1a; 首先说原理&#xff1a;http协议的头部提供了丰富的信息告诉我们一些信息&#xff…

想学Python?那这套教程再适合你不过了!!

如果你想问最近这些年什么编程语言最值得学习&#xff0c;我相信很多人都会告诉你是Python&#xff01;所以不仅是开发小白&#xff0c;甚至很多开发老手&#xff0c;也都开始学习Python&#xff0c;作为辅助第二语言来提高自己的职场竞争力。不过结合我最近这些年Python的学习…

Java compiler level does not match the version of the installed Java project facet.

2019独角兽企业重金招聘Python工程师标准>>> 解决方式&#xff1a;右击项目点击>>选择对应的版本就好、&#xff01; 转载于:https://my.oschina.net/liusonghuang/blog/1512115

【C#小知识】C#中一些易混淆概念总结(三)---------结构,GC,静态成员,静态类...

目录&#xff1a; 【C#小知识】C#中一些易混淆概念总结 【C#小知识】C#中一些易混淆概念总结&#xff08;二&#xff09; ---------------------------------------分割线---------------------------------------------- 一&#xff0c;C#中结构 在C#中可以使用struct关键字来…

C#精髓【月儿原创】第一讲 使用垃圾回收器

说明&#xff1a;准备出一个系列&#xff0c;所谓精髓讲C#语言要点。这个系列没有先后顺序&#xff0c;不过尽量做到精。可能会不断增删整理&#xff0c;本系列最原始出处是csdn博客,谢谢关注。 C#精髓 第一讲 使用垃圾回收器 作者&#xff1a;清清月儿 主页&#xff1a;h…

5GtoB即将迎来规模商用,如何共创行业新价值?

4月14日&#xff0c;在华为公司第18届全球分析师大会期间&#xff0c;华为携手运营商代表、产业界代表举办了“5G激发行业新价值”论坛&#xff0c;与行业分析师、金融分析师共同探讨对5GtoB产业未来的展望、创新解决方案以及最佳业务实践。 5G发展进入快车道&#xff0c;融合…

$.ajax上传文件或者上传图片

2019独角兽企业重金招聘Python工程师标准>>> ###FormData 想得到一个FormData对象就必须new一个FormData对象&#xff0c;然后使用append()方法向该对象里添加键值对 var formdata new FormData() //包含用户选择文件的文件流 formdata.append("file",ev…

BMP图形文件分析类(c#)

1using System; 2using JJBase.FILE; 3namespace JJBase.Image 4{ 5 /**//// <summary> 6 /// BMP 的摘要说明。 7 /// </summary> 8 public class BMP 9 { 10 11 public BMP() 12 { 13 // 14 …

gsoap 学习 1-由wsdl文件生成h头文件

开始前先看一下用户向导吧 http://www.cs.fsu.edu/~engelen/soap.html 中左侧点击Documentation 英语水平确实有限,有些内容可能说的不准确,敬请参考向导中原文,以免误导 向导 1.1节中提供了gSoap开发包的下载地址http://sourceforge.net/projects/gsoap2 下载最新gSoap程序包解…

微软每年豪砸安全研发 10 亿美元,聊聊背后的技术密码

从无序中寻找踪迹&#xff0c;从眼前事探索未来。正值 IT 黄金十年新开端&#xff0c; CSDN 欲以中立技术社区专业、客观的角度&#xff0c;深度探讨中国前沿 IT 技术演进&#xff0c;现在推出年度重磅企划——「拟合」&#xff0c;通过对话企业高管大咖&#xff0c;跟踪报道企…

phpstudy多站点配置好后index of/ 列表无法出现的解决

打开配置文件vhost-conf&#xff0c;看到图中画黄色线部分。把新配置的站点中的options后面加上 Indexes 就行了。 转载于:https://www.cnblogs.com/wubuwei/p/7388700.html