1、面向对象
什么事面向对象?一种分析问题的方式,增强了程序的可扩展性
面向对象三大特性:封装、继承、多态
什么是类?什么事对象?类和对象的区别?
类是模子,确定对象将会拥有的特性(属性)和行为(方法)
对象是一个能够看的到、摸得着的具体实体——万物皆对象
类是模具,创建对象的模具,抽象的。对象是实体的,是类的具体实例。对象具有属性(特征)和方法(行为)
类中包含了数据(用字段表示)与行为(用方法(函数、功能)表示,方法为一块具有名称的代码)
关键字:this 当前对象 base 父类对象
2、封装继承多态介绍
封装
- 将一些具有相同功能的代码封装到了一个程序集中(dll、exe)并且对外提供统一的访问接口。(属性名、方法名等)
继承(是指类与类之间的关系)
- 类的单根性继承性、传递性、继承时构造函数的问题(:this() , :base())。构造函数不能被继承。
多态
多态的作用:把不同的子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,以适应需求的不断变化
虚方法,抽象方法
关于虚方法需要注意的几点
- 父类中如果有方法需要让子类重写,则可以将该方法标记为virtual
- 虚方法在父类中必须有实现,哪怕是空实现(意思是必须有方法体)
- 虚方法子类可以重写(override),也可以不重写
关于抽象方法需要注意的几点
- 由于抽象成员没有任何实现,所以子类必须将抽象成员重写
- 抽象类中可以包括抽象成员,可以包括有具体代码的成员
接口
- 接口中只能包含方法(属性、事件、索引器也都是方法)
- 接口中的成员不能有任何访问修饰符。(默认为public)
- 子类实现接口的方法是,不需要任何关键字,直接实现即可
接口解决了类的多继承问题
以后体积庞大的问题
显式实现接口
小总结
五个访问修饰符
- private 当前类中可以访问,类中成员的默认访问修饰符
- protected 当前类及子类中可以访问(在继承中使用)
- protected internal 当前程序集或子类中(不同程序集也可以访问)
字段和属性及索引器
添加引用和导入命名空间
静态类
静态类不能被实例化:abstract
静态类不能被继承: sealed
sealed关键字,表示不能被继承。(密封类)
01面向对象强化
原文:http://www.cnblogs.com/pirates/p/4550067.html