c#面向对象

静态构造函数

*适用于初始化在编译时位置的静态数据的值,
*静态构造函数不能被重载
*静态构造函数不允许访问修饰符并不能接受任何参数
*无论创建了多少类型的变量,静态构造函数只执行一次
*运行库创建类实例或调用者首次访问静态成员之前,运行库会调用静态构造函数
*静态构造函数执行先于任何实例级别的构造函数


静态类

*不能用new来创建,并且只能包含用static关键字标识的成员变量

internal修饰符

只能在当前程序集中访问,
protected internal

readonly只读字段不能在赋初值之后改变

partial分部类型

分离代码

sealed防止继承

base控制基类的创建

public a(int a,int b,int c):base(a,b,c)

virtual override重写 base.调用父类方法

new强制覆盖父类的方法

(typea) instancea强制转换能编译过,但是运行时报错

as转换 失败为null
is

hashtable会在内部调用equals 和 gethashcode来获取正确的对象

接口显示重载

class a : b,c
void b.draw()
void c.draw()

任何支持GetEnumerator方法的类型都可以通过foreach结构进行运算

IEnumerable接口

通过yield构建迭代器

    public Enumerator GetEnumerator(){
        foreach(Car c in carArray){
            yield return c
        }
    }

命名迭代器

    public IEnumerable GetTheCars(bool returnReversed){
        if(returnReversed){
            for(int i = length,i >=0 ;i—){
                yield return a[i]
            }
        }
    }

virtual类似c++

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值