zoukankan      html  css  js  c++  java
  • C# 高效编程笔记1

    C# 高效编程笔记1

    1.使用属性而不是可访问的数据成员

    (1).NET Framework中的数据绑定类仅支持属性,而不支持共有数据成员

    (2)属性相比数据成员更容易修改

    2.用运行时常量(readonly),而不是编译期常量(const)

    (1)编译常量支持类型:基本类型,枚举,字符串, 在编译时初始化

    (2)运行时常量支持类型:任意类型,构造函数或初始化器中初始化

    (3)const在性能上优于readonly,但是readonly的灵活性更佳

    3.推荐使用is或as操作符而不是强制类型转换

    (1)尽可能使用as

    (2)符合目标类型时才能转换成功,也不会在转换时创建新对象

    (3)as不能转换值类型,as可以

    4.使用conditional特性而不是#if条件编译

    (1)conditional特性只能应用于整个方法,且方法只能返回void类型,最好不要有任何参数

    5.为类型提供ToString()方法

    6.理解几个等同性判断之间的关系

    public static bool ReferenceEquals(object left, object right); // 根据对象标识,而不是对象内容.比较值类型,返回fals.不应该重新定义

    public static bool Equals(object left, object right);// 不应该重新定义

    public virtual bool Equals(object right);

    public static bool operator ==(MyClass left, MyClass right);

    (1)Equals覆写规则:对于所有的值类型, 都应该覆写其Equals方法;对于引用类型,只有在System.Object提供的Equals方法不能满足需求时,才覆写Equals方法.覆写Equals方法的同时也要覆写GetHashCode方法.

    (2)只要创建新的值类型,都应该覆写operator ==方法

  • 相关阅读:
    mysql下载与安装
    Observable Flowable Test
    Linux 技巧:让进程在后台可靠运行的几种方法
    CallBack
    Linux内存分析
    Linux安装svn
    百度地图api
    安装Mysql官方的sakila数据库
    yii2 展示静态页面
    yii2 手动安装第三方扩展
  • 原文地址:https://www.cnblogs.com/Johar/p/6195079.html
Copyright © 2011-2022 走看看