zoukankan      html  css  js  c++  java
  • C#学习三之几个关键字Static,ref&out,get&set,readonly

    static

    静态字段,静态方法是属于类的,可以被类的所有实例使用。
    静态字段有时候也被作为简单的缓存使用。
    静态类是一种约束,约束类里边的方法和字段都必须是静态的,比如有些经常要用到的数学公式如Sin(),Cos(),可以将这些函数和变量封装在静态类中。

    ref&out

    ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数的任何更改都将反映在该变量中。若要使用 ref 参数,则方法定义和调用方法都必须显式使用 ref 关键字。并且用ref传递参数之前变量必须初始化。

    out 关键字会导致参数通过引用来传递。这与 ref 关键字类似,不同之处在于 ref 要求变量必须在传递之前进行初始化。若要使用 out 参数,方法定义和调用方法都必须显式使用 out 关键字。

    尽管 ref 和 out 在运行时的处理方式不同,但在编译时的处理方式相同。因此,如果一个方法采用 ref 参数,而另一个方法采用 out 参数,则无法重载这两个方法。

    get&set

    C# get set不提倡将域的保护级别设为 public而使用户在类外任意操作--那样太不OO,或者具体点说太不安全!对所有有必要在类外可见的域,C#推荐采用属性来表达。属性不表示存储位置,这是属性和域的根本性的区别。而且两者必须在同一个属性名下声明,而不可以将它们分离

    readonly

    需要使用静态构造方法初始化,但又不希望数值被改变的时候使用关键字readonly。

    readonly成员只能在下面的两种情况下被赋值: 1. Static constructor 2. A variable initializer

  • 相关阅读:
    【内推】平安产险大数据测试开发工程师,15-30k!
    python中的正则表达式(re模块)
    C#中ArrayList和string,string[]数组的转换
    C# 中的sealed修饰符学习
    面试题目记录
    C#中Internal class与静态类说明
    转载 C#使用Salt + Hash来为密码加密
    转载C# 对象转Json序列化
    使用https时,网站一些内容不能正常显示的问题
    转载 JQuery.data()方法学习
  • 原文地址:https://www.cnblogs.com/clownice/p/4381415.html
Copyright © 2011-2022 走看看