第六章 面向对象编程基础.ppt
《第六章 面向对象编程基础.ppt》由会员分享,可在线阅读,更多相关《第六章 面向对象编程基础.ppt(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第六章 面向对象编程基础本章目标面向对象编程的介绍类的定义和对象的声明类的成员访问控制属性静态成员方法构造函数和析构函数常量索引器运算符重载面向对象编程的基本概念面向对象编程(Object-Oriented Programming)简称OOP技术。面向对象编程的总体思路是:将数据及处理这些数据的操作都封装到一个称为类(Class)的数据结构中,在程序中使用的是类的实例对象。对象是代码与数据的集合,是封装好了的一个整体,对象具有一定的功能。程序是由一个个对象构成的,对象之间通过一定的“相互操作”传递消息,在消息的作用下,完成特定的功能。对象=(算法+数据结构)程序=(对象+对象)面向对象编程的特
2、点面向对象编程方式具有封装、继承及多态性等特点。封装性:类是属性和方法的集合,为了实现某项功能而定义类后,开发人员并不需要了解类体中的每句代码的具体含义,只需通过对象来调用类中的某个属性或方法即可实现某项功能,这就是类的封装性。例如:在使用电脑时,并不需要将电脑拆开了解每个部件的作用,用户只需按下Power键就可以启动电脑,在键盘上敲打就可以将文字输入到电脑,但电脑内部的构造用户可能不需要了解,这就是封装性的具体体现。通过继承可以创建子类和父类之间的层次关系,子类可以从其父类中继承属性和方法。例如:水果看成父类,那么水果具有颜色属性,然后定义一个苹果类,在定义苹果类时完全可以不定义苹果类的颜色
3、属性,通过继承,苹果具有了水果类的颜色属性。class 水果类 public 颜色/在水果类中定义的颜色属性 class 苹果类:水果类 /在苹果类中定义其他的属性和方法 继承性多态性类的多态指不同的类进行同一操作可以有不同的行为。例如:定义了一个汽车类和火车类,他们都可以移动,说明了两者在这方面可以进行相同的操作。然而,火车和汽车的移动是截然不同的,因为火车必须在铁轨上行驶,而汽车在公路上行驶。类的定义和对象的声明类的定义:通常把具有同样性质和功能的东西所构成的集合叫作类。类是C#程序设计的基本单位,用类声明的变量称为”类的实例”或”类的对象”.类和对象:1.类是一种类型定义;对象则是该类型
4、的一种实例,在程 序运行时创建。2.类是一种数据结构,用来模拟现实中存在的对象和关系,包含静态的属性和动态的方法。示例:所有学生都具有共同的行为(考试和上课)和基本的属性(学号,所在的班级等)。类修饰符 class 类名:基类类名 成员定义列表;(编写属性,方法,事件等代码)注意:除了class关键字和类名外,剩余的都是可选的。类修饰符可以是abstract,sealed,public,protected,internal 之一。abstract:抽象类,不允许建立类的实例,只能继承。sealed:密封类,不允许被继承,只能实例化,只能在当前项目中访问 public:不限制对该类的访问,类可在
5、任何地方访问。protected:对其所在的类以及类的子类进行访问。internal:只能在当前项目中访问(默认值)。类的声明对象:是从类定义实例化,这表示创建类的一个实例.声明对象:类名 对象名;例如:Student s;/声明一个Student 类的对象s实例化对象:在声明对象之后,需要使用new关键字将对象实例化。对象名=new 类名();例如:s=new Student();/实例化s,为s分配内存空间访问对象:访问对象,实质就是访问对象成员,使用”.”运算符。例如:s.age=22;/给s的数据成员赋值 对象的创建类的基本成员及访问控制 1.字段(域):存储要满足其设计所需要的数据。
6、2.属性:提供灵活的机制来读取,设置或计算私有或受保护字段的值。3.方法:方法是对象能够执行的一些操作,它体现了对象的功能。4.构造函数和析构函数:对对象进行初始化和回收资源。5.事件:由类产生的通知,用于说明发生了什么事情。6.索引器:允许编程人员在访问数组时,通过索引器访问类的多个实例。又称下标指示器。7.运算符:定义类的实例能使用的运算符。8.常量:用来定义与类相关的常量值。类的成员访问控制:在编写程序时,可以对类的成员使用不同的访问修饰符,从而定义它们的访问级别,即类成员的可访问性(Accessibility)。在C#中,根据类成员的可访问性可以把类成员分成四类,分别是公有成员(pub
7、lic)、私有成员(private)、保护成员(protected)、内部成员(internal)。访问修修饰符符public:表示公共访问,它是允许访问的最高级别。共有成员可以在代码的任何位置对其进行访问。private:表示私有访问,私有成员只能在声明自身的类中的才能进行访问(如果没有使用任何关键字,就默认使用这个关键字)protected:表示受保护的访问,受保护的成员只能由其所在的类中访问并且可以由派生类中的代码去访问internal:成员只能由定义它的项目(程序集)内部的代码访问。成员访问修饰符 class Student/声明两个字段 string name=“”;int age=
8、22;/返回姓名的方法public string getName()return name;/类实例化 Student s =new Student();Console.WriteLine(s.getName();/访问字段 Console.WriteLine(s.name);类的静态成员和实例成员类的成员又可以分成静态成员和非静态成员。在声明成员时,如果在语句前加上static保留字,则该成员是静态成员,如果没有static保留字,则成员是非静态成员。二者最重要的区别是:静态成员属于类所有,非静态成员属于类的实例所有,所以又称实例成员。属性对私有或保护成员常见的访问就是读取或设置数据值,在类
9、定义的外部,这种访问可以通过属性成员实现。定义属性:AccessModify Type PropertyNameget/取值代码set/赋值代码注意:如果只提供get方法,则该属性为只读;如果只提供set方法,则该属性为只写.只写属性适合于保护密码这样的敏感数据.C#中建议通过属性访问字段.示例:定义一个student类,将字段的访问控制设为private,通过属性控制在类外访问字段的权限.属性使用 class Student private string id;private string name;/id的属性 public string ID get return id;/返回读取的值
10、set id=value;/value 是一个关键字,表示要写入的数据成员的值 通过属性设置访问数据成员 class Program static void Main(string args)Student s=new Student();/用属性设置修改数据成员的值(set)s.ID=123456;s.Name=bill;/用属性设置获取数据成员的值(get)Console.WriteLine(ID=0,Name=1,s.ID,s.Name);方法方法是一种用于实现可由对象或类执行的计算或操作的成员。方法是类成员的一种,通常称为函数成员。类的方法主要是和类相关联的动作,它是类的外部界面,对于
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第六章 面向对象编程基础 第六 面向 对象 编程 基础
限制150内