欢迎来到天天文库
浏览记录
ID:38513399
大小:1.24 MB
页数:32页
时间:2019-06-14
《第3章 面向对象编程基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、学习目标认识和理解面向对象编程的基本思想根据事物的共性定义正确的类正确定义类的构造函数和创建类的对象理解继承、多态和封装的基本概念第三章面向对象编程基础23.1面向对象编程概述【学一学】起初,“面向对象”是专指在程序设计中采用封装、继承、抽象等设计方法。随着面向对象技术的不断发展和延伸,面向对象的思想已经涉及到软件开发的各个方面。如面向对象的分析(OOA,ObjectOrientedAnalysis),面向对象的设计(OOD,ObjectOrientedDesign)以及面向对象的编程(OOP,ObjectOrientedProgramming
2、)。面向对象的应用范围也日趋广泛,如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域均已引入面向对象的概念。面向对象的基本观点认为:世界是由各种各样具有自己的运动规律和内部状态的对象所组成的,不同对象之间的相互作用构成了完整的现实世界。因此,人们应当按照现实世界这个本来面貌来理解世界,直接通过对象及其相互关系来反映世界。这样建立起来的系统才能符合现实世界的本来面目。面向对象编程是一种新的程序设计范型,其基本思想是使用对象、类、继承、封装、消息等基本概念来进行程序设计。它是从现实世界中客观存在的事物
3、(即对象)出发来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式,强调直接以现实世界中的事物为中心来思考问题,认识问题,并根据这些事物的本质特点,把它们抽象地表示为系统中的对象,作为系统的基本构成单位。面向对象编程是当前软件开发技术的主流。第三章面向对象编程基础33.1面向对象编程概述面向对象编程具有以下优点:面向对象编程侧重于对象。对象具有特定的行为和属性,行为和属性决定了对象与其他对象的交互作用方式,以及对象本身的行为方式。由于对象反映了现实世界,所以使得程序更易于设计。面向对象编程能够隐藏特定的数据。面向对象编程可以只把对象的特定
4、的行为公开给用户,从而隐藏了用户不需要或者不方便透露给用户的数据。面向对象编程允许对象是独立的。在面向对象编程中,对象能够独立存在,并且具有调用其他对象行为的功能。通过使用面向对象的编程方法,开发人员能够创建出反映现实世界对象的应用程序。面向对象编程允许代码可重用性。面向对象编程中对象是一个模块单元,是完备的实体,因此可以具有高度的可重用性。例如汽车生产厂家可以预先设计一种基本车型,如果客户需要增添某些功能(电动车窗、倒车雷达、可视电话等),厂家就可以把这些功能添加到基本车型上,而不必重新设计新的车型。面向对象编程基于消息或者事件驱动。在这类应
5、用程序中,每个对象都可以向其他对象发送消息。第三章面向对象编程基础43.2类【学一学】类是具有相同属性和行为(或者称之为方法)的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和方法两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,它的主要作用是来定义对象。类与对象的关系如同一个模具和用这个模具铸造出来的铸件之间的关系。类给出了属于该类的全部对象的抽象定义,而对象则是符合这种定义的一个实体,也可以说对象是类的一个实例。在分析产生类的过程中发现,事物既有共性,也有个性。如果只考虑事物的共性,不考虑事物的个性,
6、就不能反映现实世界中事物之间的层次关系,不能完整地、正确地对现实世界进行抽象描述。运用抽象的原则就是把对象的特殊性放在一边,提取其共性,从而得到适合一个对象集合的类。如果在这个类的基础上,再考虑在抽象过程中暂被忽略的对象的特殊性,则可形成一个新的类,这个类具有前一个类的全部特征,是前一个类的子集。一个类的上层可以有父类,下层可以有子类,形成一种层次结构,这种层次结构的一个重要特点就是继承第三章面向对象编程基础3.2.1类的概念53.2类性。例如车辆这个类,车辆是一种运输工具,它可以有运输工具这个一个父类。另一方面,车辆中又可以分为机动车和非机动
7、车等种类,所以它可以有这两个子类。机动车又可以再根据具体情况加以划分,从而形成子类的子类。类中有一种特殊的类叫做抽象类,它是一种不能创建实例的类,实例只能从其子类产生,实例由抽象类产生没有实际意义。例如,动物表示一个抽象的类,它包含了飞禽等其他子类,当要产生一个具体的对象如鸽子时,则只能从它的子类中创建。第三章面向对象编程基础3.2.1类的概念63.2类【学一学】类是创建对象的模板,它定义了每个对象包含什么数据,并且提供了处理和访问数据的方法。在C#中类是通过关键字class来定义的。其语法格式为:[修饰符]class类名[:基类和实现的接口列
8、表]{类的成员}修饰符可以是abstract、sealed、public、protected、internal和private。这些修饰符的含义见表3
此文档下载收益归作者所有