欢迎来到天天文库
浏览记录
ID:30921107
大小:365.62 KB
页数:26页
时间:2019-01-04
《第04章面向对象编程技术》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第4章面向对象编程技术面向对象的程序设计方法是当前程序设计的人势所趋。面向对象的程序设计方法是对结构化程序设计方法的重新认识。在程序的设计中,方法总是与特定的数据结构密切相关的,方法含有对数据结构的访问,特定的方法只适用丁特定的数据结构,因此方法与数据结构在编程中应该是一个密不可分的整体,这个整体叫对彖。C#通过类、对象、继承、多态等机制形成一个完善的而向对象的编程体系。4.1类和对象类是c#程序设计的基本单位。4.1.1类和对象概述现实生活中的类是人们対客观対象不断认识而产生的抽象的概念,而対象则是现实牛•活小的一个个实
2、体。例如,人们在现实生活小接触了人量的汽车、摩托车、H行车等实体,从而产牛了交通工具的概念,交通工具就是一个类,而现实牛活中的具体的汽车、摩托车白行车等则是该类的对象。面向对象程序设计的类从本质上和人们现实生活中的这一认识过程是相同的。例如在编程实践中,人们经常使用按钮这一控件,每一个具体的按钮是一个按钮对彖,而按钮类则是按钮对象的抽象,并且人们把这一抽象用计算机编程语言表示为数据集合与方法集合的统一体,然后再用这个类创建一个个具体的按钮对象。可以把类比作一种蓝图,而对象则是根据蓝图所创建的实例,可以把类比作牛产模具,而対
3、象则是由这种模具产生的实例(产品)。所以人们乂把对象叫做类的实例。类是対事物的定义,而对象则是该事物本身。在VisualStudio.NET集成环境屮的,工具箱中的一个个控件,是被图形文字化的可视的类,而把这些控件添加到窗体设计器中后,窗体设计器中的控件则是对彖,即由工具箱中的类创建的对象。类是一种数据类型,在C#屮,类这种数据类型可以分为两种:一种是由系统提供的预先定义的,这些类在.NET框架类库中;一种是用户定义数据类型。在创建对象之前必须先定义该对彖所属的类。然后由类声明对彖。类本质上是一种数据类型,所以类的川法与棊
4、本数据类型的用法基木相同,事实上,在VisualStudio.NET中像int、float等棊本数据类型也是特殊的类。那么,用棊本数据类型可以声明变量,用类类型也可以声明变量,只不过类类型的变量叫类的対象或类的实例。4.1.2类定义类定义的格式与结构定义的格式相似,在类定义中需要使用关键字class,其简单的定义格式为:class〈类名〉{类体}“类名”是一个合法的C#标识符,表示数据类型(类类型)名称,“类体”以一对大括号开始和结束,在一对大括号后而可以跟一•个分号。例如:classstudent〃类名为student{
5、publicstringID;publicstringName;publicboolSex;}上例中,定义了一个名为“student”(学生)的类,类体中包括学生的学号(“ID”)、姓名(“Name”)与性别(“Sex”)。在上例的“类体”中声明的数据都使用“public”修饰,“public”(公共的)表示这些数据可以直接进行访问。如果仅从“student”类的定义形式看,其与结构类型除了关键字外几乎没冇任何差别。当然这只是为了说明问题方便,这种定义方式并不符合面向对象程序设计的原则,因为类中缺少了对数据的操作。“类体”
6、包括类屮的所有数据及对数据的操作,面向对象程序设计将数据与对数据的操作作为一个整体,以类的形式进行定义,这种机制叫“封装”。在“类体”中,所冇的数据及对数据的操作的集合叫类成员,类成员的种类很多,本章仅介绍“字段”、“属性”、“方法”与“构造函数”。“字段”是类定义中的数据,也叫类的变量。在上例中定义的“ID”、“Name”与“Sex”等均为类中的字段。“属性”用于读取和写入“字段”值,“屈性”是字段的自然扩展,对用户而言,“属性”等同于“字段”木身,对程序员而言,属性是一种读写“字段”的特殊方法。“方法”实质上就是函数,
7、用于对字段进行计算和操作,即对类中的数据进行操作,以实现特定的功能。4.1.3声明与使用对象定义类之后,可以用定义的类声明对象,声明对象后可以访问对象成员。每一个类对象均貝有该类定义中的所有成员,正如每一个整型变量均可以表示同样的数值范围一样。1.声明对象声明对彖的格式与声明基本数据类型的格式相同:类名对象名;例如:studentS1;〃声明一个学生类对象S1但是,对象声明后,需用“new”关键字进行初始化,这样才能为对象在内存中分配保存数据的空间。初始化的格式:对象名=new类名();例如:Sl=ncwstudcnt()
8、;〃为S1分配内存空间可以将声明与初始化对象合二为一,例如:studentSl=newstudent();〃声明对彖并初始化1.访问对象访问对象实质是访问对象成员,对对象变量成员的访问与结构变量相同,使用运算符。例如:S1.ID二T2345";Sl.Name="张三”;SI.Sex=true;上面的代码
此文档下载收益归作者所有