基于C#的类机制分析研究_第1页
基于C#的类机制分析研究_第2页
基于C#的类机制分析研究_第3页
基于C#的类机制分析研究_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 基于C的类机制分析研究 摘要:本文分析研究C语言的类机制,目的在于分析计算机解决问题的类方法,引导计算机学习者掌握类工具解决实际问题。Key:问题C#抽象对象类一、引言随着计算机的普及应用,利用计算机解决实际问题越来越大众化,目前大众化的解决方案大多使用市场上现有的应用软件,而编程解决方案似乎依然是程序员的事情,大多数学习者学习了编程语言也只是停留在语言语法学习的层面上,距解决实际问题还有一段差距。本文着重分析研究计算机解决方案的有力工具“类”方法,其目的在于掌握类方法,利用这一工具更好地创造性地为解决实际问题设计解决方案。二、类的生成过程分析计算机解决问题方案类的生成过程如下:实际问题层信

2、息层动态数据结构数据类型(类)(一)由实际问题层向信息层的抽象抽象是有选择的忽略,面对现实世界众多而又复杂的问题,设计计算机解决方案,首先要考虑选择忽略什么,何时忽略的问题,将现实层面的问题“对象”,首先看成某一特征的集合,如“学生”这一“对象”,可看成:学校、学号、姓名、性别、出生年月、身体、体重、血型等特征的集合,然后抽取特征集中对解决问题必不可少的最重要的特征,进行有选择的忽略、简化,这样现实世界里的事物就被“抽象”为信息世界里的数据对象。如:在学校管理系统里选择“学号、姓名、性别、班级、出生年月”而忽略“身高、体重、血型”等特征,但对体育院校的管理系统来讲又要选择身高、体重等特征。(二

3、)信息层向动态数据结构抽象将信息层面上的数据集合内的数据的关系进行分析,分析过程即抽象化的过程,可按对象间的联系模式分成三类,即线性表、树和图,如个人通信录中各对象的信息之间只有先后排列的关系,对象之间只存在一种线性互连的结构联系,将对象抽象为数据结点,这种逻辑结构即线性表。又如家谱中各对象之间不构成线性的单传联系,线性表对这种数据集合无法表达,显得无能为力,而用“树”的数据结构就可以恰到好处地表达“家谱”这种数据集合。因此,信息层面上的数据集合经分析用恰当的方法进行数据抽象,抽象出相适应逻辑层面上的数据结构。(三)动态数据结构向数据类型(类)抽象要用计算机解决问题,都必须将问题最终转化为机器

4、可以识别的两种稳定状态,这样机器才能识别、理解并执行,程序设计语言层的数据抽象“类”起到了数据结构与机器表示层面的中介作用,由于数据结构的动态特征,在程序设计语言中一般没有直接定义数据结构的手段,只能利用语言所规定特有的数据表达机制间接地实现所需数据结构及其操作,为了能够表达不同类型的数据,C#高级语言规定了“类”这个核心概念,对于简单类型的数据对象可以直接在语言层上选择适当的数据类型来定义,而对于联系复杂的数据对象,必须先用“类”的观点来刻画,然后再映射到具体的语言机制中去。如利用类实现树结构、二叉树结构等。总之,计算机编程解决方案的制定过程是一个抽象化的过程,首先抽象事物对象的信息属性,进

5、而分析数据结构,选择表达的数据类型,在程序设计语言层面上转换为相应的“类”,最后在系统软件的作用下,生成机器可以识别、可执行的位串形式。三、C#语言的类机制所有编程语言都是帮助人们用计算机来解决问题的工具,C#语言是众多高级语言之一。现实计算机系统是一个复杂的系统,要解决的问题也越来越复杂,“语言”承受着复杂性的压力。C#处理复杂性问题时,通过问题的抽象,使用“类”方法,把复杂的问题进行简单化的处理。(一)C#语言对简单的数据的表示系统数据类型计算机要处理各种复杂的数据,为了让计算机在处理这些简单数据时及时、正确,C#语言系统规定了基本的数据类型,程序员可以直接调用这些数据类型来定义变量和标识

6、数据类型,计算机系统对不同的数据按照不同的类型进行区分、处理。如:int a=8;int表达了数据的存储类型,即4个字节大小的存储空间,称呼其为整型类型,“a”是存储这个整数8的存储单元的地址的抽象,既变量名,“8”是该单元内存放二进制数字串的抽象,即变量值,表明“a”所有的取值来自一个固定的区域的集合,实现数据对象的机器表示。(二)C#语言对复杂数据表示类为了解决一般复杂问题,复杂信息用系统规定的简单数据类型是不能表示的或者说表示相当复杂,对信息的阅读和处理极为不便;C#语言还可以用系统定义的类或程序员自定义的类来对复杂数据进行表示。通过类的定义把复杂的实际问题简化、抽象,再调用类来定义对象

7、,通过对类、对象的属性、方法、事件等等相关特性来对复杂数据进行简单处理。(三)C#语言类机制的发展C#语言是对C语言的发展,它不仅扩充了C语言面向过程的功能,而且增加了面向对象的功能,C#语言对C语言的改进,最重要的就是增加了“类”这样一种数据类型,“类”是用来定义“对象”的一种“抽象”数据类型,是一组“对象”的数据和行为特征的抽象描述,也就是说“类”是“对象”的“抽象”,“对象”是对一事物属性及行为特征的抽象,这种逐层“抽象”方法好处在于可以减少程序代码的编写工作,解决更为复杂的问题。在使用“类”时,用户不必熟悉“对象”内部的复杂性,只需掌握“类”的使用,不仅大大减轻了用户的工作量,同时提高

8、了计算机解决复杂问题的能力。四、“类”应用的必要性分析高级语言采用了复杂的类机制,隐藏用户无须关心的类工作细节,使用户在逻辑层面上考虑问题,进而解决问题,即使是汇编语言也包含了一些有用的类,假设我们正在用汇编语言编写一个程序,那么我们必须时常考虑机器的状态,我们可以支配的工具是寄存器、内存、以及运行在这些寄存器、内存上的指令,要用汇编语言做成一件有用的事情,就必须把我们的问题用这些特定的概念表达出来,这种“表达”就是一种“抽象”的表述,而这些“抽象”的表述就是不同的数据类型的表述;在机器执行之前要解释这些“表达”,使之有别于直接在机器上写程序。更难以察觉的是,对于机器设计者来说,“内存”和“寄

9、存器”的概念本身就是一种“类”,如果不采用类的方法,那用户使用计算机这种复杂机器将会是什么情景呢?如果抛弃类不用,则程序的运行就要表示成处理器内无数个门电路的状态变换,展开想象,处理复杂问题的编程建立在表示处理器内无数个门电路的状态变换,那将是一个复杂又复杂的局面,用户很难掌握和控制这种局面。因此,必须要有一整套的类机制,对各层信息进行不同的表述,才能有效地使用户掌握复杂设备以解决现实问题。五、结束语针对C#语言的“类”方法分析研究,得出“类”是我们掌握复杂系统,解决复杂问题的方法和工具,“类”便于描述和讨论问题,可以使问题在逻辑层面上简单化,一般化,具有通用性。我们不仅要掌握“类”的使用方法,而且可以定义新的“类”,这将是我们处理复杂世界的最有力的工具,特别是面向对象程序设计的程序设计者,“类”这一核心观点都尤为重要,因而对“类”方法的研究具有现实意义。 Reference:1游戏学院编著.网络游戏开发语言

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论