zoukankan      html  css  js  c++  java
  • 关键字

    • checked

      在进行算术运算时,可以使用checked关键字有效地处理溢出错误。如果不使用 checked 关键字,数值出现溢出时将不会出现任何异常信息,这时将会出现一件可怕的事情,程序中的数据已经不正确,但是还没有发现。

     Byte btOne, btTow;
                if (byte.TryParse(txtByte1.EditValue.ToString(), out btOne) && byte.TryParse(txtByte2.Text, out btTow))
                {
                    try
                    {
                        //checked { btOne += btTow; }
                        btOne += btTow;
                        txtByteOut.EditValue = btOne;
                    }
                    catch (OverflowException ex)
                    {
                        MessageBox.Show(ex.Message, "错误");
                    }
                }
                else
                {
                    MessageBox.Show("请输入0-255的数字", "错误");
                }
    OverflowException
    • typeof

      使用 typeof 关键字获取类的内部结构。typeof 关键字用于获取类型的 System.Type 对象。通过 System.Type 对象调用相应的方法,可以得到类型中定义的成员,我们所熟知的反射机制也使用了类似方式,使用反射机制首先是向应用域中加载程序集,然后得到 System.Type 对象,最后通过 System.Type 对象中的成员信息来执行相应操作。

    1  Type type1 = typeof(System.Int16);
    2  string str = string.Empty;
    3  Type type2 = str.GetType();        
    typeof用法
    •  using

      使用 using 关键字有效回收资源。在进行文件操作后要显示调用文件流的 Close 方法释放文件资源,在使用数据库连接时也要调用连接对象的 Close 方法释放数据库资源。如果忘记调用 Close 方法,有可能会导致程序执行异常,而且还会导致垃圾收集器多次回收对象,造成内存的浪费。

    private void btnUsing_Click(object sender, EventArgs e)
            {
                using (new test()) using (new test1())
                {
    
                }
            }
            class test : IDisposable
            {
                public void Dispose()
                {
                    MessageBox.Show("已执行 test 对象的 Dispose 方法!","提示");
                }
            }
            class test1 : IDisposable
            {
                public void Dispose()
                {
                    MessageBox.Show("已执行 test1 对象的 Dispose 方法!", "提示");
                }
            }
    using 用法

      代码中使用了 using 关键字,在其后的小括号中创建了一个 test 类型的对象,using 关键字要求小括号内产生的对象必须实现 IDisposable 接口或者其基类实现了 IDisposable 接口,如果没有实现此接口,那么在编译是会出现错误。在 using 关键字下面的代码块执行完毕后,会自动将 test 对象隐式转换为 IDisposable 接口类型,并调用接口方法 Dispose 释放对象资源。

    • is

      使用 is 关键字检查对象是否与给定类型兼容。在程序的开发过程中经常会使用类型转换,如果类型转换不成功则会出现异常,从抛出异常到捕获并处理异常,无形中增加了系统的开销,而且太过频繁的处理异常还会严重地影响系统等等稳定性。is 关键字可以有效地解决上面出现的问题。is 关键字检查对象是否与给定类型兼容,如果兼容则返回 true,如果不兼容则返回 false 。在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换。

     string str = "C#";
                object obj = str;
                if (obj is string)
                {
                    MessageBox.Show("类型兼容!", "提示");
                }
    is 用法
    • as

    使用 as 关键字将对象转换为指定类型。与 is 关键字不同,is 关键字用于检查对象是否与给定类型兼容,而 as 关键字会直接进行类型转换,如果转换成功将会返回转换后的对象,如果转换不成功则不会抛出异常而是返回 NULL。

  • 相关阅读:
    常见保护方式简介
    各种保护机制绕过手法
    ShellCode框架(Win32ASM编写)
    单例模式
    HTTP1.0、HTTP1.1、HTTP2.0的关系和区别
    java集合提供的排序算法
    Dubbox以及微服务
    进程栈帧
    java线程池
    Java多态的实现
  • 原文地址:https://www.cnblogs.com/houxt/p/11262067.html
Copyright © 2011-2022 走看看