面向对象三大特征
封装
1.面向对象编程的核心思想
2.对象:属性,方法,事件封装得到类
3.保证类的内容的数据结构的完整
4.属性封装,行为封装,对象封装,命名空间封装,解决方案封装
5.访问修饰符:设置类的成员访问权限
访问修饰符
public(公开)
所有类的类成员
访问范围:任何代码都可以访问
private(私有)
给所有类或者成员使用
访问范围:只能在本类中访问
protected(受保护的)
应用给类和内嵌类的所有成员
访问范围:当前类以及所有的子类
intemal
应用给类和内嵌类的所有成员
适用范围:应用于同一程序集
protected intemal/intemal protected
应用给当前类和内嵌类的所有成员
使用范围:同一程序集和子类
继承
1.子承父业:
子类会继承父类的属性,构造,行为
2.父亲具有的,儿子不一定具有,子类具有的,父类也不一定具有
当父类只有带参构造,子类自动会要有带参构造
3.C#不支持多重继承,但是可以多重接口继承
4.关键字this:当前类自己,base:代表当前类的亲父类
5.实例化过程(对象创建过程,先调用的最终父类的构造函数然后依次往下调用当前类)
6.析构过程(对象销毁的过程,从自己开始销毁知道最终父类)
类型---------------对象
Rect rect=new Rect();
多态(函数)
重载
同一个类中,方法名相同,参数列表不同;
继承
重写override
虚拟virtual
1,virtual只能修饰函数或属性成员;
2,虚拟类也就是正常类,所以不牵扯;
3,虚拟类不能被密封;
抽象abstract
1,抽象函数只能包含在抽象类中;
2,抽象函数只能声明函数,不能实现函数;
3,继承了抽象类,必须实现所有的类中的抽象成员;
4,抽象类中可以放正常成员;
5,抽象类无法进行实例化;
6,抽象类不能被密封或静态或私有;
进程和线程
一个程序是一个进程,一个进程有多个线程。
Process:提供对本地和远程进程的访问并能够启动和停止本地系统进程。
前台线程
只有所有的前台线程都关闭了,才能完成程序关闭
后台线程
只要所有的前台线程关闭了,后台线程会自动结束
字节数组转字符串
1,将字节数组每个元素按照指定的编码转成字符串输出;
2,直接进行Tostring;
3,将字节数组中的每个元素进行Tostring.
加密
Encoding:表示字符编码
GetEncoding:返回与指定代码页名称关联的编码