Net Core教程

C#进阶 - C#各种方法汇总

本文主要是介绍C#进阶 - C#各种方法汇总,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、静态方法(static)

  • 特点:
    • 生命周期:一旦创建直到应用结束才会结束
    • 全局
    • 效率高
  • 用处:
    • 用户登录信息
    • 系统配置信息
    • 系统设置
    • SQLHelper
  • 注意:
    • 静态内容创建多了,内存占用会很大,不是必要情况下不要创建静态对象
  • 调用:
    • 静态方法A中调用非静态方法B,只能间接调用(将方法B所在类进行初始化后再调用)
  • 参考链接:

    • C#之static(静态方法 静态类 静态函数)

             

二、构造方法

  • 特点
    • 类默认有一个无参数的构造方法
    • 方法名和类名相同
    • 可以有多个重载  
  • 用处
    • 初始化对象、初始化一些数据

三、析构方法

  • 特点
    • 以 ~类名 命名
    • 一般不会直接调用
  • 作用
    • 释放资源
    • GC垃圾回收时候调用
  • 非托管资源
    • WIndows窗口句柄、数据库连接、GDI对象、独占文件锁等
    • Dispose需要实现IDisposable接口
    • Close(关闭但没完全释放)和Dispose(完全释放)区别
    • 语法糖(using(……){……}代码块)    

四、虚方法(virtual)(小蜜蜂)

  • 特点
    • 允许子类/派生类 进行重写,从而实现不一样的功能
  • 特点
    • 好维护   

五、抽象方法(abstract)(大懒虫)

  • 特点
    • 一定要写在抽象类里面,不带方法体,不能new出来
  • 使用场景
    • 强制性一定要实现
  • 与接口Interface区别:
    • 抽象类只能单继承,接口可以多继承
    • 抽象类可以有虚方法和普通方法,接口只能写规范不能写实现
    • 使用场景
      • 抽象类一般用于常用不会经常改动,然后抽象范围大一些的事物
      • 接口适用于经常修改,只是一个规范的地方    

六、重写方法(override)

 

七、拓展方法

  • 定义
    • 可以在不修改某一类的代码的情况下,实现该类方法的扩展
    • 在静态类中定义静态方法(第一个参数要用关键字this,指向要扩展的类)  
    • 当扩展方法与类原始的方法重名时,原始方法的优先级高于扩展方法,并且对于系统类,不要随便添加扩展方法
  • 使用场景
    • 调用密封类中的对象、属性或者方法
    • 拓展接口
    • 在Linq链式编程

 

这篇关于C#进阶 - C#各种方法汇总的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!