C#面向对象学习笔记概要
1.面向对象不是取代面向过程的。
2.面向对象的三个特性:封装、继承、多态。
3.字段、方法、属性(后面讲)都可以叫做类的成员,他们都需要定义访问级别。访问级别的用处在于控制成员在哪些地方可以被访问,这样达到面向对象中“封装”的目的。
4.几个访问级别:public(任何地方都可以访问);private(默认级别。只能由本类中的成员访问)。还有internal、protected两个级别,以后会讲。(***永远不要把字段public***)
5.惯用法:属性开头字母大写,字段开头字母小写。属性看似字段、不是字段,可以进行非法值检验。
class Person { private int age; public int Age { get{return age;} set{age=value;} } public void SayHello() { Console.WriteLine("我的年龄是{0}",Age); } }
只用set或者只用get就可以定义只读或者只写属性(只写的不常见)例子? 可以为set、get设置访问级别
6.类的继承:定义类的时候不指定父类,则是Object类。
7.异常与异常处理
传统的错误表示方式:错误码。错误码的缺点:不处理则很难发现,每次处理则很麻烦;难以看出错误的原因;容易使得程序进入不确定状态。
try catch。Exception ex 异常也是对象。Exception 类主要属性:Message、StackTrace? 发生异常后程序默认就退出了,后续代码不会被执行。catch以后的代码则会继续执行。? 不要吃掉异常? 扔出自己的异常
8.常量与静态成员
const常量。常量名要大写。全局变量。static类变量。
9.不用new就能用的方法:static方法,static方法其实就是普通函数
在static方法中可以调用其他static方法、字段、属性,但是不能调用非static方法、字段、属性。在非static方法中可以调用static的方法、字段。
10.静态类:不能被new的类就是静态类。一般用来实验纯的一些函数库。