方法分类:
1.静态方法
特点:1.生命周期 -- 一旦创建 -- 应用结束 才会结束 2.全局 3.效率高
用处: 用户登录信息,系统配置信息,系统设置,SQLHelper
注意:静态的创建太多,占用内存会很大,不必要情况不要创建静态的对象
调用: 静态方法调用 "非静态方法" 需要new一下类,通过实例去调用, 静态方法静态方法,可以直接通过类去调用
2.构造方法
特点:默认有一个无参数的构造方法(可以不写),可以多个并重载
用处:初始化对象,或者初始化一些数据
3.析构方法
作用:释放对象
谁在使用:GC垃圾收集器在调用
回收废托管资源
--windows窗口句柄,数据库链接,GDI对象,独占文件锁等等对象
--ApplicationContext,Brush,Component,ComponentDesigner,Container,Context,Cursor
--FileStream,Font,Icon,Image,Matrix,Ojbect.OdbcDSataReader,OleDBDataReader,Pen
--Regex,Socket,StreamWriter,Timer,Tooltip等
4.虚方法(virtual) override(重写)
作用:允许子类/派生类,进行得写,也实现不一样的功能
特点:好维护.
5.重写方法(override)
(1)重写虚方法
(2)实现抽象类
(3)
6.抽象方法 (abstract)
定义:抽象方法一定要写在抽象类里面,而且不能用,不带方法体
使用场合:一定要实现
与接口区别使用场合:
区别:1.抽象类是单继承,接口可以多继承
2.抽象类里可以写普通方法,虚方法等,接口只能写规范,不写实现
使用场合:抽象类一般用于常用不会经常改动,然后抽象范围大一些的事件,人-->男人/女人
接口适用于经常修改,只是一个规范的地方
抽象类和实现类
接口和实现接口
扩展方法:(一定要在静态类中)
定义:在静态类中,定义静态方法,--->扩展方法
使用场合:1.调用密封(sealed)类中的对象,属性,或者方法(扩展密封类) 2.扩展接口链式编程
扩展接口