面向对象、对象、类(字段、属性、方法、构造函数)、变量作用域、静态成员、实例成员、抽象类、接口等

面向对象:封装 继承 多态

对象:

世间万物皆对象

一切事物都是对象

对象时一个具体的,

对象的组成:一个特征(属性),一个行为(方法)

 

类:

是抽象的概念,是一种数据类型,引用类型

类是创建对象的模版

类组成:字段、属性、方法、构造函数、事件等

同一个cs文件中可以有多个类

字段的命名:骆驼命名

属性:是一个聪明的字段,封装字段,帕斯卡命名

构造函数:是一种特殊的方法,给类初始化(给类内部的字段初始化),没有返回值,名字必须和类名一致

 

变量作用域

变量分两种:成员变量、局部变量

成员变量:直接属于某个类,作用域在该类内部

局部变量:声明该变量的块语句或方法结束的封闭括号之前的作用域内

 

封装

 把事物的状态和行为封装在类中

 

继承

让某个类型的对象获得另一个类型的对象的属性的方法,所有类都直接或间接地继承object类

继承还有个重要的特性:父类对象可以引用子类的实例

private:私有的,只有在当前类中访问

protected:只能在自己及自己的子类中可以访问、

public:对任何类和成员对完全开放,务限制访问

internal:只能在同一应用程序集内使用本类

internal protected:只能做同一应用程序集内通过本类或派生类访问

 

访问级别约束

子类访问级别不能高于父类

 

静态成员  实例成员

静态成员属于类所有,非静态成员(实例成员)属于类的实例所有

 C#静态方法属于类所有,类实例化前即可使用

在静态方法中不可以直接调用实例方法

在实例方法中可以 直接调用静态方法

静态方法和静态变量创建后始终使用同一块内存(静态存储区),实例成员会创建多个内存空间

 

 多态

 多态就是指不同对象收到相同消息时,会产生不同行为,同一类在不同场合下表现出不同的行为特征

多态的作用:把不同的子类对象都当做父类来看,可以屏蔽不同子类之间的差异,写出通用的代码,做出通用的编程,以适应不断变化的需求。

 

抽象类

抽象类定义的是公共的实现和能力

抽象类不能别实例化

抽象类为子类提供所需要的成员

抽象类中的成员既可以有实现也可以无实现

抽象类必须由其子类实现它的抽象成员(除非子类也是抽象类)

一个类只能继承一个抽象类(类的单根继承性)

 

 虚方法

虚方法可以给父类提供一种默认的实现

子类可以使用override重写虚方法

虚方法不能出现在密封类(sealed)中

 

虚方法和抽象方法的区别

虚方法必须有实现,抽象方法不能有实现

抽象方法只能出现在抽象类中

抽象方法必须被子类重写(override),除非子类也是抽象类

 

接口

接口是定义一种能力,定义类的一组标准和规范,规定子类能干什么和抽象类有些相似,结局类的单根继承,接口可以实现多重继承

子类

接口中的成员必须不能有实现

接口中的成员不能有访问修饰符,隐式公开

接口中可以有属性、方法、索引器等,但不能有字段

接口中的所有成员必须被子类中全部实现

接口污染,一个接口之做一件事

 

接口和抽象类

抽象类中可以有实现,而接口中不能有实现

抽象类和接口都不能被实例化

接口的成员在子类中直接实现,抽象类中的抽象成员要重写 override

 

什么时候使用抽象类,什么时候使用接口

抽象类主要用于关系密切的对象,而接口适合为不相关的类提供通用功能

飞机会飞,鸟会飞,他们都实现了同一个接口“飞”,但是F22属于飞机抽象类,各自属于鸟抽象类

 

函数返回值(函数参数前的修饰符)

params 可变参数,必须出现在参数列表的最后

ref 仅仅是一个地址,引用传递,可以把值传递强制改为引用传递

out 让函数可以输出多个值

ref 必须先初始化,因为是引用,所以必须先“有”,才能引用,而out则是内部为外部赋值,所以不需要初始化,而且外部初始化也没用

ref应用场景是内部对外部的值进行改变,out则是内部为外部变量赋值,out一般用在函数有多个返回值的场所

 

集合

ArrayList,可变长度数组,使用类似与数组,是个杂货铺,什么类型的数值都可以放进去。

Hashtable,键值对集合,key是目录,keyvalue是值,类似与字典

泛型集合

List<T>类似于ArrayList,存储、读取数据时不用装箱、拆箱。

Dictionary<K,V>类似于Hashtable,K、T、V就像一把锁,锁住集合只能存某种特定的类型数据

foreach遍历

移除:Remove、RemoveAt、RemoveRange、Clear。

 

 

 

 

 

posted on 2012-07-01 20:46  云起的自学笔记  阅读(815)  评论(0编辑  收藏  举报

导航