编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛  
全能 ASP / PHP / ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
发新话题
打印

新手问一个低级问题!

新手问一个低级问题!

本人刚从ASP往.NET跳,买了一本基础书,问一下在用一个控件的时,为什么都要放在上面用using声明一下啊?书上讲的太模糊了,看不明白!

TOP

那是申明的命名控件

TOP

控件是放在一个集合中  或是说.NET里面有一个专门用于存放这些控件的容器
只要申明了这个命名空间  就相当于打开了进入这个容器的一个通道  可以从里面拿到相应的控件

TOP

使用空间的钥匙   楼上的是老师吗
.NET发烧友交流群  群一:5953354(满)群二:68096127群三:30217249群四:37023079
注:二、三、四群管理员正在招募中,希望大家多多支持!
drl_0602@hotmail.com    为了更好的交流互相加一下

TOP

.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语句末尾或者中途引发了异常并且控制离开了语句块。
【http://bcsn.5d6d.com】编程少年基地提供在线视频教程、电子图书、程序源码等众多资源  近期将推出第六届齐鲁大学生软件设计大赛参赛队员及评委老师的寄语专题

TOP

发新话题