C#之类与对象知识点

1. 关键词this是指向实例自身的,主要运用在五个方面,例如传入的形参将成员数据覆盖时,可以用this表明是实例中的数据;

    将当前对象作为参量传入给另一个函数;

    With indexers(索引器);

    this也可以用来重载构造函数,例如

     也就是说,使用第二个构造函数的时候调用this(42)是调用第一个构造函数并将42传入第一个构造函数的参量,然后再进行scope里面的内容;

     隐式调用成员函数和数据。

2. 静态成员被视作整个class的一部分,可以直接用类名调用,而非静态成员在class外只能通过实例化调用,所以在C#中用静态方法可以实现全局方法,但是因为静态成员只属于类,所以在this中不能调用并且不能调用非静态成员数据。

    静态构造函数应该在实例化之前被调用且不能有修饰符。

   静态类也类似,不能实例化,没有派生类,没有非静态成员

3. 如果需要对非托管资源进行释放,需要使用iDisposable接口。而一种简单的方法是使用using,当使用完成后即执行出scope,编译器就会自己调用Dispose()。

   出了using的scope就会被回收。

4. ref使用前必须将数据初始化,而out仅需申明类型,表示接下来就会给变量赋值

5. overloading是相同名字不同参量和行为;overriding是对继承的方法具体化(需在父类指明virtual在子类指明override)

6. 属性是将数据进行封装,属性中需要get和set来访问和处理数据;readonly的数据只能在构造函数和初始化时进行赋值。

原文地址:https://www.cnblogs.com/GameChina/p/4373105.html