第1章-面向对象程序设计绪论
1 面向对象程序设计概述
面向对象程序的特点 面向对象程序的特点 程序
4.多态 4.多态( polymorphism )
优点: 优点: 1. 可以为具有继承关系的不同类所形成的类族 提供统一的外部接口; 提供统一的外部接口; 2. 减少记忆操作名的负担。 减少记忆操作名的负担。
对象和类的概念 对象和类的概念
1. 对象(object) 对象是软件开发所涉及的问题域中一些事物的抽 象; 对象是用来描述客观事物的一个实体, 对象是用来描述客观事物的一个实体,它是构成 系统的一个基本单位; 系统的一个基本单位; 对象由一组属性(attribute)和对这组属性进行 对象由一组属性 和对这组属性进行 操作的一组方法(method)的封装体,具有唯 的封装体, 操作的一组方法 的封装体 一的标识; 一的标识; 属 性 作 为 类 中 的 数 据 项 称 为 数 据 成 员 ( data member),表示一类对象所共有的静态特性; ) 表示一类对象所共有的静态特性; 方 法 作 为 类 中 的 操 作 称 为 成 员 函 数 ( member function),表示一类对象所共有的动态特性。 ) 表示一类对象所共有的动态特性。
对象和类的概念 对象和类的概念
消息和方法的关系 对象根据接收到的消息, 调用相应的方法; 对象根据接收到的消息 , 调用相应的方法 ; 反过 有了方法, 对象才能响应相应的消息。 来 , 有了方法 , 对象才能响应相应的消息 。 所以 消息模式与方法界面应该是一致的。 同时, 消息模式与方法界面应该是一致的 。 同时 , 只要 方法界面保持不变, 方法界面保持不变 , 方法体的改动不会影响方法 的调用。 的调用。 C++语言中方法是通过函数来实现的 语言中方法是通过函数来实现的, 在C++语言中方法是通过函数来实现的, 称为成员 函数。 函数。
UML第1章 面向对象方法概论
1.3
面向对象开发的概念
面向对象开发是现实世界中以抽象为基础的 软件思维的一种崭新方式。面向对象开发的本质 是应用领域概念的鉴别和组织,而不是它们在一 种程序设计语言中的最终表示。
1.3.1
面向对象方法学
• • • •
分析 系统设计 对象设计 实现
1.3.2 • 对象模型 • 动态模型 • 功能模型
• 所谓“描述”是指用一种语言把人们对问题域 中事物的认识、对问题及其解决方法的认识描 述出来。最终的描述必须使用一种能够被机器 读得懂的语言,即编程语言。
1.2.2 • • • • • • 标识 分类 多态性 继承 封装 抽象
对象的特性
1.2.3
软件工程学的作用
• 软件工程学从认识事物方面看,它在分析阶段 提供了一些对问题域的分析认识方法。从描述 事物方面看,它在分析和设计阶段提供了一些 从问题域逐步过渡到编程语言的描述手段 。 • 传统的软件工程方法(图1-1)与面向对象的 软件工程方法(图1-2)比较
问题域 需求分析 总体设计和详细设计 编程和测试 软件维护
图1-1
问题域 自然语言 面向对象的编程语言 OOA OOD OOP OOT 计算机
图1-2
• 传统的软件工程方法: 1)需求分析 2)总体设计和详细设计 3)编程和测试 4)软件维护
• 面向对象的软件工程方法 1)面向对象的分析 2)面向对象设计 3)面向对象的编程 4)面向对象的测试 5)面向对象的软件维护
• 面向对象方法的主要优点是 : (1)与人类习惯的思维方法一致 (2)稳定性好 (3)可重用性好
(4)可维护性好 (5)面向对象的软件稳定性比较好 (6)面向对象的软件容易修改 (7)面向对象的软件容易理解 (8)易于测试和调试
C 面向对象程序设计(2010年清华大学出版社出版的图书)
第1章计算机和C++编程入门 概述 1.1计算机系统 1.2编程和问题求解 1.3 C++入门 1.4测试和调试 小结 自测题答案 编程项目 第2章 C++基础知识 概述
图书五
内容简介
图书目录
《C++面向对象程序设计》从实际应用出发,系统地介绍C++面向对象程序设计的原理、方法和技巧。重点突 出,叙述清楚,深入浅出,论述详尽,使读者既能深刻领会面向对象程序设计的思想,了解面向对象程序设计的 特征,又能掌握C++语言的编程与应用。全书共8章,主要包括:面向对象程序设计语言概述、C++语言基础知识、 类和对象、对象成员和友员、继承和派生、多态性和运算符重载、模板、C++的输入/输出流。在每一章的知识点 后面,都给出了相应的程序设计实例,这些实例不仅有助于读者巩固知识点的内容,而且更有助于读者创新能力 的培养。
图书一
内容提要
目录
C++面向对象程序设计本书介绍了C++面向对象程序设计的基本知识和编程方法,以及C++面向对象的基本特征。 针对初学者的特点,本书力求通过大量实例、习题和上机实验题,以通俗易懂的语言讲解复杂的概念和方法,使读 者能深刻理解和领会面向对象程序设计的特点和风格,掌握其方法和要领,以期帮助读者尽快地迈入面向对象程 序设计的大门。
Savitch教授的研究领域包括复杂性理论、形式语言理论、计算语言学和计算机教材的开发。他因为对复杂 性理论所做的贡献而声名远扬,其中包括他提出的第一个完整语言(complete1anguage)范例。这个奠基性的
毕业设计-学校社团信息管理系统-计算机论文[管理资料]
学校社团信息管理系统题目学校社团管理信息系统专业计算机应用技术班级设计者前言随着电子计算机和通信技术的发展,人类已经逐渐地进入信息化社会。
信息和材料、能源一样成为一种社会的基本生产资料,在人类的社会生产活动中发挥着重要的作用。
同时人们对信息和数据的利用与处理也已进入自动化、网络化和社会化的阶段,因此,开发相关的管理信息系统已经成为各行各业的必要和必需了,管理信息系统作为一门边缘学科,集管理科学、信息科学、系统科学、现代通信技术和电子计算机技术于一体,可以解决企业或组织所面临的问题,对内来看,可以提高工作效率;对外来看,获得竞争优势。
管理信息系统的开发方法有生命周期法、原型法和面向对象的开发方法等。
生命周期法(Life Cycle Method)是20世纪60年代发展起来的一种应用广泛且比较成熟的管理系统开发方法,它的基本思想是将系统的开发工作从开始到结束划分为若干个阶段,每个阶段都有明确的任务,而系统开发出来后,并不意味着生命周期的结束,而意味着根据组织的需要对系统的修改和重建的开始;原型法(Prototyping Method)是20世纪80年代发展起来的,旨在改变生命周期法的缺点的一种系统开发方法,该法的开发思路是首先根据用户的要求,由用户和开发者共同确定系统的基本要求和主要功能,利用系统快速生成工具,建立一个系统模型,再在此基础上与用户交流,将模型不断补充、修改、完善,如此反复,最终直至用户和开发者都比较满意为止,从而形成一个相对稳定、较为理想的管理信息系统;面向对象(Object Oriented)的开发方法于20世纪80年代开始兴起的,是一种基于问题对象的自底向上的一种系统开发方法,这种方法的特点是以对象为基础,对象是分析问题和解决问题的核心。
基于以上三种方法的特点和各自的优缺点,本图书馆管理系统利用软件工程化思想和方法,总体上是采用结构化生命法进行系统分析和设计的,而系统实现等步骤则采用了原型法和面对对象的方法。
L01绪论
24
面向对象程序设计
福州大学 吴小竹
图1.9 选择构建命令
25
面向对象程序设计
福州大学 吴小竹
图1.10 连接过程结束
编译与连接是两个独立的过程,在有些编译系统中分别用两个独立的命 令来实现,也有的编译系统用一个命令就完成编译与连接这两个过程。C++ 编译系统也可以用一个命令就能完成编译与连接这两个过程。其操作过程为: 单击主菜单中的Build(构建),在下拉菜单中选择Build(构建)命令。
C++ 概 述
11
面向对象程序设计
福州大学 吴小竹
一般程序的开发过程
C++ 程 序 的 开 发 过 程
编辑 edit
–将源程序输入到计算机中,生成后缀为 cpp的磁盘文件。
编译 compile
–将程序的源代码转换为机器语言代码。
链接 link
–将多个源程序文件以及库中的某些文件 连在一起,生成一个后缀为exe的可执行 文件。
对经过编译后的C++程序进行连接的操作如下:
单击主菜单中的Build(构建),在下拉菜单中选择Build(构建)< 文件名>(本例中为Build L1_3.exe)命令,如图1.9所示。 在连接过程中如果没有错误发生,即生成一个扩展名为.exe的可执行 文件。连接完成后,在主窗口的下方将给出调试信息。如图1.10所示。
面向对象程序设计
第一章 绪论
福州大学 吴小竹
Байду номын сангаас
面向对象程序设计
福州大学 吴小竹
本章主要内容
课程介绍 C++概述 基本C++程序的开发过程
《C++面向对象程序设计(第2版)》第1章 绪论
1.2 面向对象思想与机制(续3)
“类”是相似物体的高度抽象,或者说,类是相似对象的 特征抽象。 简单来说,一个类都包含若干“成员”,这些成员代表了 同类对象的“特征”:
人 树 电脑 有姓名、年龄、身高、体重,思想 有高度、宽度、命名 有品牌、显示器、主板、CPU 遇到突发事件时有回应 适度浇水可以生长,扒 掉树皮就会死亡 加电就会运行,点击就 有反应
每个类的特征数量虽然有多有少,但都可以分为静态部分 和动态部分。前者称为物理特征,或属性,或数据,后者 称为行为特征,或动作,或方法。 归结起来,一个类是由数据成员和方法成员构成的。
1.2 面向对象思想与机制(续4) 2. 类与对象
一个对象是个体存在,
一个类是相同对象的共性。
一个对象不仅具有特征,而 且每一个特征都可以赋予具 体值。 在该名字前加上“这个”、 “那个”等限定词后则构成 对象。
面向对象程序设计
西南交通大学信息科学与技术学院
主讲教师:廖革元
课程说明 参考教材 :
C++面向对句程序设计 清华大学出版社 李晋江
考核要求: 考勤+作业+期末考试
从C到C++
关键是思 想观念的 转变
C程序员
?
C++程序员
你的处境 这是又一项准备——思想准备。 1. 你的庆幸: 你所写的全部C代码均可在所有支持 C++C 的编译器 越是资深的 程序员,就 中使用。 越难以跨越感情和习惯性 思维模式的鸿沟。 2. 你的不幸: 你所知道全部C语言知识和面向对象毫无关系,你 C语言学的越扎实,越习惯面向过程编程,越难转 请记住这句名言: 向面向对象。
1.2 面向对象思想与机制(续1) 1.人类认识世界和发展世界的过程
C#程序设计复习总结
C#程序设计目录绪论基础:控制语句、数据类型类:方法、属性、委托、事件异常处理窗体、控件文件访问、数据库绘图第一章绪论一C#特点C# 是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在.NET Framework 上运行的各种安全、可靠的应用程序。
使用C#,您可以创建传统的Windows 客户端应用程序、XML Web services、分布式组件、客户端- 服务器应用程序、数据库应用程序以及很多其他类型的程序。
Microsoft Visual C# 2005 提供高级代码编辑器、方便的用户界面设计器、集成调试器和许多其他工具,以在C# 语言版本2.0 和.NET Framework 的基础上加快应用程序的开发。
C# 语法表现力强,而且简单易学。
C# 的大括号语法使任何熟悉C、C++ 或Java 的人都可以立即上手。
C# 语法简化了C++ 的诸多复杂性,同时提供了很多强大的功能,例如可为空的值类型、枚举、委托、匿名方法和直接内存访问。
C# 支持泛型方法和类型,从而提供了更出色的类型安全和性能。
作为一种面向对象的语言,C# 支持封装、继承和多态性概念。
所有的变量和方法,包括Main 方法(应用程序的入口点),都封装在类定义中。
类可能直接从一个父类继承,但它可以实现任意数量的接口。
重写父类中的虚方法的各种方法要求override 关键字作为一种避免意外重定义的方式。
在C# 中,结构类似于一个轻量类;它是一种堆栈分配的类型,可以实现接口,但不支持继承。
C# 还通过几种创新的语言结构加快了软件组件的开发,其中包括:封装的方法签名(称为委托),它实现了类型安全的事件通知。
属性(Property),充当私有成员变量的访问器。
属性(Attribute),提供关于运行时类型的声明性元数据。
内联XML 文档注释在C# 中,如果需要与其他Windows 软件(如COM 对象或本机Win32 DLL)交互,可以通过一个称为“Interop”的过程来实现。
郎波《Java语言程序设计(第4版)》教学进度表-48学时
6
12
2
第5章Java高级特征:
集合类;
枚举类型;
包装类与自动装箱和拆箱;
注解Annotation;
var局部变量类型推断
实训4:
练习4-3
习题5:
7
13
2
第6章异常处理:
异常的概念;
异常处理方法;
自定义异常类
实训5:
练习5-1
练习5-2
习题6:1-5
14
2
第7章输入/输出:
输入/输出流的概念;
《Java语言程序设计(第4版)》教学进度表(48学时)
课次
学时
计划教学内容
教学内容
实验
习题
1
2
第一章绪论:
面向对象程序设计概述;
Java发展历史与技术体系;
Java的特征
习题1:
1-2
2
2
第一章绪论:
Java语法机制;
Java运行系统;
Java应用;
Java程序示例
实训1:
练习1-1,
练习1-2
习题1:
19
2
第9章Applet编程:
Applet基本概念;
Applet的编写;
Applet中的图形化用户界面GUI
习题9:
1-7
20
2
第10章线程:
线程的概念;
线程的两种构造方法;
线程调度
实训8:
练习8-1
习题10:
1-4,8
21
2
第10章线程:
线程控制;
线程同步
习题10:
6,7
22
2
第10章线程:
线程间的交互;
第一章绪论清华大学郑莉ppt课件
十进制整数转换成R进制的整数
“除R取余”法,例如:
2 68
余数
示
2 34 ┄┄┄┄┄┄┄┄┄┄┄┄0 低位
与
2 17 ┄┄┄┄┄┄┄┄┄┄┄ 0
存 储
2 8 ┄┄┄┄┄┄┄┄┄┄┄ 1 2 4 ┄┄┄┄┄┄┄┄┄┄ 0 2 2 ┄┄┄┄┄┄┄┄┄┄ 0
2 1 ┄┄┄┄┄┄┄┄┄ 0
0 ┄┄┄┄┄┄┄┄┄ 1 高位
15
C++语言程序设面计 向对象的基本概念
清华大学 郑莉
面
——类
向
对 面向对象方法中的"类"
象
具有相同属性和服务的一组对象的集合
的 方 法
为属于该类的全部对象提供了抽象的描述, 包括属性和行为两个主要部分。
类与对象的关系:
犹如模具与铸件之间的关系,一个属于某
类的对象称为该类的一个实例。
16
C++语言程序设面计 向对象的基本概念
发 高软件维护的效率。
25
C++语言程序设计
信息的表示和存储
信息的分类 计算机的数字系统 程序设计中常用的数制 不同进位计数制间的转换 信息的存储单位 二进制数的编码表示 小数的表示方法 非数值信息的表示
清华大学 郑莉
26
C++语言程序设计
清华大学 郑莉
信 信息的分类
息
的 表
┌ 指令
存
=(255.75)10
储
(3506.2)8=3*83 + 5*82 + 0*81 + 6*80 +2*8-1 =(1862.25)10
(0.2A)16=2*16-1 +10*16-2=(0.1640625)10
第01章 绪论
if () ~ else for () ~ while () ~ do ~ while () continue break switch goto return
条件语句 循环语句 循环语句 循环语句 结束本次循环语句 中止循环式switch语句 多分支选择语句 转移语句 从函数返回语句
(4)复合语句 ) 复合语句是一种十分重要的语句,由大括号{和} 把一些说明和语句组合在一起,使它们在语法上等价 于一个简单语句;可由若干简单语句或复合语句组成。 例如:
1.2.2 编辑 是指把按照C++语法规则编写的程序代码 通 过编 辑 器(Borland C++ 5.05,Visual C++ 6.0,Turbo C++ 3.0)输入计算机,并存盘。 在存盘时,C++源文件的扩展名为.CPP。 C++ .CPP 1.2.3 编译 将编辑好的C++源程序通过编译器转换为 目标文件(OBJ文件)。即生成该源文件的目 标代码。
1972年美国贝尔实验室的Dennis M.Ritchie为 克服B语言的诸多不足,在B语言的基础上重 新设计了一种语言,取其第二字母C,故称为 C C语言。 1980 1980年贝尔实验室的Bjarne Stroustrup C Bjarne Stroustrup对C 语言进行了扩充,推出了“带类的C”,多次修 改后起名为C++。以后又经过不断的改进,发 展成为今天的C++。 C++改进了C的不足之处,支持面向对象的程 序设计,在改进的同时保持了C的简洁性和高 效性。
if ( a>b ) { c=a-b; d=c*a; } else { c=a+b; d=c*b; }
1绪论
数据封装 对象
§1.2 面向对象程序设计
二、面向对象程序设计(OOP,Object-Oriented 面向对象程序设计( Programming) ) 2. 面向对象程序设计的几个重要概念
封装和数据隐藏 继承和重用 多态性
§1.2 面向对象程序设计
二、面向对象程序设计(OOP,Object-Oriented 面向对象程序设计( Programming) ) 封装和数据隐藏: 封装和数据隐藏: C++通过建立用户自定义类型( C++通过建立用户自定义类型(类)支 通过建立用户自定义类型 封装性和数据隐藏。 持封装性和数据隐藏。完好定义的类一旦建 就可看成是完全封装的实体, 立,就可看成是完全封装的实体,可以作为 一个整体单元使用。 整体单元使用 一个整体单元使用。类的实际内部工作应当 隐藏起来, 隐藏起来,使用完好定义的类的用户不需要 知道类是如何工作的,只要知道如何使用它 知道类是如何工作的, 就行。 就行。
§1.1 面向对象思想的由来
现实问题空间 面向对象解空间
物质: 物质: 一辆白色的自 行车 意识: 意识: 自行车
具体事物: 具体事物: 一个对象—— 一个对象 自行车的实例 抽象概念: 抽象概念: 自行车类
§1.2 面向对象程序设计
一、结构化程序设计(SP,Structure Programming) 结构化程序设计( ) 结构化程序设计思路是 自顶向下, 结构化程序设计思路是:自顶向下, 设计思路 逐步求精; 逐步求精;其程序结构是按功能划分若干 个基本模块,这些模块形成一个树状结构; 个基本模块,这些模块形成一个树状结构; 各模块之间的关系尽可能简单 简单, 各模块之间的关系尽可能简单,在功能上 独立; 相对独立 每一模块内部均是由顺序、 相对独立;每一模块内部均是由顺序、选 择和循环三种基本结构组成; 择和循环三种基本结构组成;其模块化实 现的具体方法是使用子程序 子程序。 现的具体方法是使用子程序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
41
错误所在行
错误的原因
如果编译出错,会出现提示信息, 指出错误的位置及种类
42
光标移到该行 双击错误 所在行
43
生成可执 行文件
通过后单 击该命令 运行程序
44
运行结果显示 在DOS屏上
注意:不可以在软盘上 运行程序!应该把保存 在软盘中的源文件拷贝 到硬盘的目录中再运行!
45
未编译前,只 有一个源程序
参考书
教材:
C++程序设计教程
清华大学出版社
钱能著
参考书:
C++primer 人民邮电出版社 Stanley B.
Lippman 著 C++大学教程 电子工业出版社 H.M.Deitel 著 C++编程思想 机械工业出版社 Bruce Eckel 著
第一章 绪论
Hexagon
getArea
getArea
Triangle和Rectangle都有名为getArea的操作,
这些操作完成与Polygon中的getArea相同的任务: 计算边长围起来的面积。 假如我们执行语句x.getArea(),则哪个被执行呢? 若x是Triangle的对象(实例),则执行 Triangle中的getArea操作; 若x是Rectangle的对象(实例),则执行 Rectangle中的getArea操作; 若x是Hexagon的对象(实例),则由于 Hexagon中没有getArea操作而继承执行中的 getArea操作; 若x是一般任意形状的Polygon的对象(实例), 则作执行Polygon中的getArea操作; 不是上述四个类的对象,则可能因为未定义名 为操作而产生错误。 总之,任何情况都是可能发生的。
多态性
“polymorphism(多态性)”一词来自两
个希腊词,分别表示“许多”和“形 态”,多态是指具有许多形态的特性。 多态性(polymorphism)是一种方法, 这种方法使得在多个类中可以定义同一 个操作或属性名,并在每个类中可以有 不同的实现。 多态性(polymorphism)是一种特性, 这种特性使得一个属性或变量在不同的 时期可以表示不同类的对象。
面向对象程序设计(C++)
Oriented Object Programming (C++)
第一章 绪论 Introduction
主讲:董静
教师信息
姓名:董静 E-Mail:tjufe_xk@ 办公电话:88186305
课程安排
成绩:平时成绩占30%,期末成绩占
70%。 平时成绩:出勤率+课上测验+上机实 验+课后作业 期末成绩:闭卷考试 提醒:上课自带U盘,拷贝程序。
本程序编译执行后,在DOS屏幕上打印出 I am a student.
34
编译过程: 1)启动Visual C++,选择“文件”菜单中的“新建” 命令,选择“文件”标签中的“C++ Source File” 选项。 2)选择源程序存放的目录和输入源程序名,单击 “确定”。 3)在编辑器中编写源程序。 4)单击F7或“编译”中的“重建全部”编译源程 序,若编译通过,单击“执行”,在DOS屏上看结 果,任按一键返回编辑器。
多态性
假设类Polygon,表示二维图形,如图所示: 可以为Polygon定义操作getArea,该操作返回对 象的面积。 则我们可派生一些类,如Triangle,Rectangle和 Hexagon,都是Polygon的子类
Polygon getArea
Triangle
Rectangle
动态绑定
动态绑定是指在执行期间(非编译期
)判断所引用对象的实际类型,根据 其实际的类型调用其相应的方法
多态指可以根据运行情况的不同而执行不同的操作,简单
的说,多态性就是为同一个函数和操作符定义几个版本。 C++允许子类的成员函数重载基类的成员函数。能依据其 类型确认调用哪个函数的能力,称为多态性,或称迟后联 编,也有的译为滞后联编。 编译时能确定哪个重载函数被 调用的称为先期联编。编译时的多态性—函数重载;运行 时的多态性—虚函数。C++通过覆盖和重载实现多态性。
33
函数体开 包含文件 主函数 始#include<iostream.h> 分号,一条完整语 句的结束符
一个简单的C++程序
void main(void ) { cout<<“I am a student.\n”; //输出字 符串 输出流,在屏幕上打印 注释或说明 } 函数体结 引号内的字符串
束
源程序所在目录
46
编译运行后,出 现众多附加文件 同时,产生一个 子目录Debug
47
Debug目录中,有 obj和EXE文件
48
另一个例子 #include <iostream.h> void main(void) { cout << “i=”; //显示提示符 int i; //说明变量i cin >>i; //从键盘上输入变量i的值 cout << “i的值为:” <<i<<’\n’; // 输出 变量i的值 }
简单的C++程序介绍
高级语言编译过程 库文件(各种函数)
可执行文件 源程序 目标文件 (二进制文件) (文本文件) (二进制文件) *.EXE *.CPP *.OBJ 编译 连接 compile link
F7
在Vitual C++系统中,可直接从源程序编译连接至可执行程序,但 依然要生成*.OBJ及*.EXE这两个文件。
35
启动VC++ 编译系统
36
单击“File”菜单 中“New”命令
VC++编译 系统界面
37
选择“Files”选项卡
选择C++源 文件命令
输入文件名
输入文件 存放位置 选择驱动 器或目录
单击选择 驱动器
38
输入C++ 源代码
C++源文件 编辑界面
39
可以将此源 代码另起文 件名存盘
40
选择编译命令,将源文 件.cpp生成.obj文件
继承和重用
C++采用继承支持重用的思想,程序可以
在扩展现有类型的基础上声明新类型。
新子类是有现有类型派生出来的,称为派
生类。
继承就是从父辈处得到属性和行为特征,
继承是C++语言的一种重要机制,该机制 自动地为一个类提供来自另一个类的操作 和数据结构,这使得程序员只需在新类中 定义已有类中没有的成分来建立新类。
49