• C#基础精华02(静态类,值类型,引用类型,枚举,结构,ref与out)


    静态类

    静态类不能被其他类继承,静态成员亦不能被继承(访问的是同一个),备注1.
    静态类只能继承自Object类。(静态类不能继承自其它类。)
    继承(多态)、静态本身就是相反的。
    静态类不能实现任何接口, (因为接口中的成员都是实例成员。*)
    sealed:(*)密封类,不能被继承。
    sealed关键字,表示类不能被继承。(密封类)
    密封类表示不能被继承。String类。.net系统中本身对字符串有很多特殊处理(为String开了很多“绿灯”,String有很多特权,比如:不可变性,字符串池等等。),防止别的类继承后造成混乱。商业问题。
    禁止子类重写父类的方法。
    静态类的本质abstract+sealed(*,知道即可)static
    静态类不能被实例化:abstract
    静态类不能被继承:sealed


    值类型:
    int、char、double、float、long、short、byte、bool、enum、struct、decimal
    值类型都是派生自ValueType
    值类型不能继承,只能实现接口。





    引用类型:
    string、数组、类(子定义数据类型)、接口、委托、
    int[] n={1,2,3};//引用类型。
    引用类型都派生自:Object
    引用类型可以继承(类之间可以继承)







    枚举
    一组和数值有关的常量
    enum Gender { Male,Female}
    enum Weeks { 星期日=0,星期一,}

    把字符串转换成枚举Gender g = (Gender)Enum.Parse(typeof(Gender), "Male");



    结构
    就是小类,值类型
    不能继承类
    可以实现接口
    不能有显示无参构造函数(隐式)

    结构中不能给字段赋初始值



    ref与out

    1、使用ref型参数时,传入的参数必须先被初始化。对out而言,必须在方法中对其完成初始化。 
    2、使用ref和out时,在方法的参数和执行方法时,都要加ref或out关键字。以满足匹配。 
    3、out适合用在需要retrun多个返回值的地方,而ref则用在需要被调用的方法修改调用者的引用的时候。

    ref :可进可出,要赋初值

    out :只出 不进  可以没有初值

  • 相关阅读:
    Python selenium —— 一定要会用selenium的等待,三种等待方式解读
    python3 selenium 切换窗口的几种方法
    转:对UI自动化测试的一些感悟
    Docker
    【转】selenium之 定位以及切换frame
    selenium——键盘操作
    selenium——鼠标事件
    python 读取Excel表格方法
    springboot maven 更新jar包速度慢的问题
    Python3 读写utf-8文本文件
  • 原文地址:https://www.cnblogs.com/CSharpLover/p/5193695.html
Copyright © 2020-2023  润新知