当前位置:文档之家› 第10~11讲 继承和派生 (11级)

第10~11讲 继承和派生 (11级)

第3章 继承和派生习题

《面向对象程序设计》习题 班级:学号:姓名:名单序号:成绩: 第3章继承与派生 一、选择题(共28分,每题1分) 1.下列对派生类的描述中,()是错误的。 A.一个派生类可以作为另一个派生类的基类 B.派生类至少有一个基类 C.派生类的成员除了它自己的成员外,还包含了它的基类成员 D.派生类中继承的基类成员的访问权限到派生类保持不变 2.派生类的对象对它的哪一类基类成员是可以访问的?() A.公有继承的基类的公有成员 B. 公有继承的基类的保护成员 C. 公有继承的基类的私有成员 D. 保护继承的基类的公有成员 3.关于多继承二义性的描述,()是错误的。 A.派生类的多个基类中存在同名成员时,派生类对这个成员访问可能出现二义性B.一个派生类是从具有共同的间接基类的两个基类派生来的,派生类对该公共基类的访问可能出现二义性 C.解决二义性最常用的方法是作用域运算符对成员进行限定 D.派生类和它的基类中出现同名函数时,将可能出现二义性 4.多继承派生类构造函数构造对象时,()被最先调用。 A.派生类自己的构造函数B.虚基类的构造函数 C.非虚基类的构造函数D.派生类中子对象类的构造函数 5.C++类体系中,能被派生类继承的是()。 A.构造函数B.虚函数C.析构函数D.友元函数 6.设有基类定义: class Cbase { private: int a; protected: int b; public: int c; }; 派生类采用何种继承方式可以使成员变量b成为自己的私有成员( ) A. 私有继承 B.保护继承 C. 公有继承 D.私有、保护、公有均可 7.C++中的类有两种用法:一种是类的实例化,即生成类对象,并参与系统的运行;另一种是通过()派生了新的类。 A.复用 B.继承 C.封装 D.引用 8.继承具有(),即当基类本身也是某一个类派生类时,底层的派生类也会自动继承间接基类的成员。 A.规律性 B.传递性 C.重复性 D.多样性

C++语言程序设计实验答案_继承与派生教学提纲

C++语言程序设计实验答案_继承与派生

实验07 继承与派生(4学时) (第7章继承与派生) 一、实验目的 二、实验任务 7_1 声明一个基类Animal。 有私有整型成员变量age,构造其派生类dog,在其成员函数SetAge(int n)中直接给age赋值,看看会有什么问题,把age改为公有成员变量,还会有问题吗?编程试试看。 7_2 声明一个基类BaseClass。 有整型成员变量Number,构造其派生类DerivedClass,观察构造函数和析构函数的执行情况。 7_3 声明一个车(vehicle)基类。 具有MaxSpeed、Weight等成员变量,Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类。自行车(bicycle)类有高度(Height)等属性,汽车(motorcar)类有座位数(SeatNum)等属性。从bicycle和motorcar派生出摩托车(motorcycle)类,在继承过程中,注意把vehicle设置为虚基类。如果不把vehicle设置为虚基类,会有什么问题?编程试试看。

7_4 以实验6中的People(人员)类为基类。 派生出student(学生)类,添加属性:班号char classNo[7]; 派生出teacher(教师)类,添加属性:职务char principalship[11]、部门char department[21]。 从student类中派生出graduate(研究生)类,添加属性:专业char subject[21]、导师teacher adviser; 从graduate类和teacher类派生出TA(助教生)类,注意虚基类的使用。重载相应的成员函数,测试这些类。 类之间的关系如图7-1所示。 图7-1 类图

C 第八章继承与派生习题习题解答

第八章继承与多态习题 一.基本概念与基础知识自测题 8.1填空题 8.1.1 如果类α继承了类β,则类α称为(1)类,而类β称为(2)类。(3)类 的对象可作为(4)类的对象处理,反过来不行,因为(5)。如果强制转换则要注意(6)。 答案:(1)基类 (2)派生类 (3)派生类 (4)基类 (5)派生类有一些新成员 (6)只能派生类强制转换为基类 8.1.2 当用public继承从基类派生一个类时,基类的public成员成为派生类的(1)成员, protected成员成为派生类的(2)成员,对private成员是(3)。公有派生可以使其类的(4),所以公有派生是主流。 答案:(1)public成员 (2)protected成员 (3)不可访问 (4)接口不变 8.1.4 一个派生类只有一个直接基类的情况称为(1),而有多个直接基类的情况称为 (2)。继承体现了类的(3)概念,这在MFC中得到了很好表现,MFC中只采用了(4)。 答案:(1)单继承 (2)多重继承 (3)层次 (4)单继承 8.1.6 C++中多态性包括两种多态性:(1)和(2)。前者是通过(3)实现的, 而后者是通过(4)和(5)来实现的。 答案:(1)编译时的 (2)运行时的 (3)函数和运算符的重载 (4)类继承关系 (5)虚函数 8.2简答题(以下习题题号可能和教材不一致!) 8.2.1构造函数和析构函数可以继承吗?派生类构造函数各部分的执行次序是怎样的?答:构造函数和析构函数不可以继承。派生类构造函数各部分的执行次序是: 1.调用基类构造函数,按它们在派生类声明的先后顺序,依次调用。 2.调用新增成员对象的构造函数,按它们在类定义中声明的先后顺序,依次调用。 3.派生类的构造函数体中的操作。 8.2.2什么叫派生类的同名覆盖(override)?

Java 教案-第11章 继承和多态

第11章继承和多态 11.1介绍(Introduction) 面向对象编程允许从已有的类派生出新类,这叫继承(Inheritance)。继承是软件代码重用的一种机制,是一种在面向对象编程中非常重要的,而且强大的特性。假设已经定义了一个圆形,矩形和三角形的模型类,这些类有许多相同的特征,如何设计才能避免冗余,而且还能使系统易于理解和维护?答案就是使用继承。 11.2超类和子类 不同的类可能包含一些相同的,公共的特性和行为,把这些相同的东西组合在一起形成一个新的公共类来被其他类共享。继承就是定义一个一般类,然后扩展这个一般类形成更多的特殊类。这些特殊类继承了一般类的某些属性和操作。 这些类的对象我们可以称为几何对象,那么就创建一个称为几何类的一般类,这个一般类包含几何元素中的一些公共的属性和操作,如可以填充元素,修改线条的颜色,或撤销填充等。因此一般类GeometricObject可以作为所有几何对象的一般类模型。如图一般类的UML图,以及特殊类之间的关系图。 在Java术语中,一个类C1是从C2扩展来的,那么C1类称为子类,C2类称为父类或超类。子类继承父类可访问的数据和方法,同时可以扩展出自己的新的数据和方法如上图所示。代码如下。

思考一下,如下定义的构造方法是否正确?为什么? 答案是否定的,原因就是子类不能访问父类的私有的数据,但可以通过调用父类的get或set方法来访问它。

关于继承的几点注意: 1.子类不是超类的一个子集,实际上子类包含父类,并对其进行了扩展,内容比父类更丰富。 2.父类中私有的数据不能被它之外的任意类访问。因此,它们不能在子类中被直接使用。但是,如果在父类中定义了setter或getter,可以通过使用它们来访问这些数据。 3.并不是所有的is-a的关系都是继承关系,例如,一个方形是一个矩形,但却不能使用方向矩形来扩展方向,因为没有什么可扩展的。但却可以从几何类中进行扩展定义方形类。因为新的子类要比父类包含更多的详细信息。 4.继承被用来模型化is-a的关系。不要盲目的为了重用方法而扩展类。例如,没必要把一个树类扩展为人类,尽管二者具有很多相同的属性,比如高度和重量。子类和父类之间必须存在is-a的关系。 5.很多其他的编程如c++允许一个子类可以从几个父类扩展和继承,称多重继承,但Java不允许多重继承,即严格的单继承。即一个类的声明中只能有一个关键字extends,而且后面只有一个类名。如果想要拥有若干个类的特性,可以实现接口(在14章讲授)。 11.3supper关键字 子类继承了父类可访问的数据和方法,它是否继承构造方法呢?父类的构造方法可以在子类中被调用吗?在前面一章中,介绍过一个关键字this,表示对象自己。Super关键字则指它的父类,有2种方式被使用。 1.调用父类构造方法。 2.调用父类的其他方法 11.3.1 调用父类构造方法 调用父类的构造方法的格式如下: 其中super()调用父类无参数的构造方法,super(argument)调用父类和参数argument匹配的构造方法。但需注意的是,不管是使用哪条语句,调用父类的构造方法语句必须放在子类定义的构造方法之前,并且只能显示的调用父类的构造方法。如下语句是正确的。

继承与派生练习题

继承与派生练习题

习题八 第八章继承与派生 1.下列对派生类的描述中,(D.派生类中继承的基类成员的访问权限到派生类保持不变 )是错误的。 A.一个派生类可以作为另一个派生类的基类 B.派生类至少有一个基类 C.派生类的成员除了它自己的成员外,还包含了它的基类成员 D.派生类中继承的基类成员的访问权限到派生类保持不变 2. 派生类的对象对它的哪一类基类成员是可以访问的?(A.公有继承的基类的公有成员) A.公有继承的基类的公有成员 B. 公有继承的基类的保护成员 C. 公有继承的基类的私有成员 D. 保护继承的基类的公有成员 3. 关于多继承二义性的描述,(D.派生类和它的基类中出现同名函数时,将可能出现二义性 )是错误的。

A.派生类的多个基类中存在同名成员时,派生类对这个成员访问可能出现二义性B.一个派生类是从具有共同的间接基类的两个基类派生来的,派生类对该公共基类的访问可能出现二义性 C.解决二义性最常用的方法是作用域运算符对成员进行限定 D.派生类和它的基类中出现同名函数时,将可能出现二义性 4. 多继承派生类构造函数构造对象时,(B.虚基类的构造函数)被最先调用。 A.派生类自己的构造函数B.虚基类的构造函数 C.非虚基类的构造函数 D.派生类中子对象类的构造函数 5. C++类体系中,能被派生类继承的是( B.虚函数)。 A.构造函数 B.虚函数 C.析构函数 D.友元函数 6. 设有基类定义: class Cbase { private: int a; protected: int b; public: int c; }; 派生类采用何种继承方式可以使成员变量b成为自己的私有成员(A. 私有继承) A. 私有继承 B.保护继承

C++继承与派生类习题

第九章继承与派生类 9.2 典型例题分析与解答 例题1:下列对派生类的描述中,()是错误的。 A.一个派生类可以作为另一个派生类的基类 B.派生类至少有一个基类 C.派生类的成员除了它自己的成员外,还包含了它的基类成员 D.派生类中继承的基类成员的访问权限到派生类保持不变 答案:D 分析:一个派生类可以作为另一个派生类的基类。无论是单继承还是多继承,派生类至少有 成 的成员时可能出现二义性。消除二义性的方法是采用作用域运算符。派生类和它的基类中出现同名函数时,不可能出现二义性。 例题4:多继承派生类构造函数构造对象时,()被最先调用。 A.派生类自己的构造函数 B.虚基类的构造函数 C.非虚基类的构造函数D.派生类中子对象类的构造函数 答案:B 分析:多继承派生类构造函数构造对象时,构造函数的调顺序是:虚基类的构造函数,派生类中子对象类的构造函数,派生类自己的构造函数。

例题5:C++类体系中,能被派生类继承的是()。 A.构造函数B.虚函数C.析构函数D.友元函数答案:B 分析:C++类体系中,构造函数、析构函数和友元函数是不能被派生类继承的. 例题6:设有基类定义: class Cbase { private: int a; protected: int b; public: int c; }; 用派生类中子对象类的析构函数,最后调用基类的析构函数。 例题11:设有以下类的定义: class A class B: protected A class C: private B { int A1; { int b1; { int c1; protected: int A2; protected: int b2; protected: int c2; public: int A3; public: int b3; public: int c3; }; }; }; 请按访问权限写出派生类C中具有的成员。 私有成员: (1)

《管理学》第十一章习题与详解

《管理学》第十一章习题与详解 管理学习题与详解 第十一章领导概论 1.何谓领导?领导在管理中的作用具体表现在哪些方面? 答:领导就是指挥、带领、引导和鼓励部下为实现目标而努力的过程。 领导者的作用具体表现在以下三个方面: (1)指挥作用。指在组织活动中,需要有头脑清醒、胸怀全局,能高瞻远瞩、运筹帷幄的领导者帮助组织成员认清所处的环境和形势,指明活动的目标和达到目标的路径。 (2)协调作用。指组织在内外因素的干扰下,需要领导者来协调组织成员之间的关系和活动,朝着共同的目标前进。 (3)激励作用。指领导者为组织成员主动创造能力发展空间和职业生涯发展的行为。 2.如何根据不同标准分析和研究不同类型领导的特点? 答:分析和研究不同类型领导的特点需要根据不同的标准: (1)按权力运用方式 ①集权式领导者。指把管理的制度权力相对牢固地进行控制的领导者。 集权式领导者的优势在于通过完全的行政命令,使管理的组织成本在其他条件不变的情况下,低于在组织边界以外的交易成本,可能获得较高的管理效率和良好的绩效。这对于组织在发展初期和组织面临复杂突变的环境时,是有益处的。但长期将下属视为某种可控制的工具,不利于其职业生涯的良性发展。 ②主式领导者。其特征是向被领导者授权,鼓励下属的参与,并且主要依赖于其个人专长权和模范权影响下属。

民主式领导者的缺陷在于权力的分散性使得组织内部资源的流动速度减缓,增大了组织内部的资源配置成本。其好处在于通过激励下属的需要,发展所需的知识,尤其是意会性或隐性知识,能够充分地积累和进化组织的能力,员工的能力结构也会得到长足提高。 (2)按创新方式划分 ①魅力型领导者。这种领导者有着鼓励下属超越他们预期绩效水平的能力。 魅力型领导者的影响力来自以下方面:①有能力陈述一种下属可以识别的、富有想像力的未来远景;②有能力提炼出一种每个人都坚定不移赞同的组织价值观系统;③信任下属并获取他们充分信任的回报;④提升下属对新结果的意识;⑤激励他们为了部门或组织利益而超越自身的利益。 ②变革型领导者。这种领导者鼓励下属为了组织的利益而超越自身利益,并能对下属产生深远而不同寻常的影响。变革型领导者关心每个下属的日常生活和发展需要,帮助下属用新观念分析老问题,进而改变他们对问题的看法,能够激励、唤醒和鼓舞下属为达到组织或群体目标而付出加倍的努力。 (3)按思维方式划分 ①事务型领导者。又称维持型领导者,这种领导者通过明确角色和任务要求,激励下属向着既定的目标活动,并且尽量考虑和满足下属的社会需要,通过协作活动提高下属的生产率水平。他们对组织的管理职能和程序推崇备至,重视非人格的绩效内容,并且严格遵守组织的规范和价值观。 ②战略型领导者。其特征是用战略思维进行决策。他们认为组织的资源由有形资源、无形资源和有目的地整合资源的能力构成。他们的焦点经常超越传统的组织边界范围中的活动,进入组织之间的相互关联区,并将这种区域视为组织潜在的利润基地。 战略型领导行为系指拥有预见、洞察、保持灵活性并向他人授权,以创造所必需的战略变革能力。战略领导是多功能的,涉及通过他人进行管理,包含整个企业的管理,并帮助组织处理随着竞争环境的巨变带来的变化。

继承与派生

第7章——继承与派生 一、选择题 1.在c++中,类之间的继承关系具有( )。 (a) 自反性 (b) 对称性 (c) 传递性 (d) 反对称性 2.下列关于类的继承描述中,( )是正确的。 (a) 派生类公有继承基类时,可以访问基类的所有数据成员,调用所有成员函数。 (b) 派生类也是基类,所以它们是等价的。 (c) 派生类对象不会建立基类的私有数据成员,所以不能访问基类的私有数据成员。 (d) 一个基类可以有多个派生类,一个派生类可以有多个基类。 3.当一个派生类公有继承一个基类时,基类中的所有公有成员成为派生类的( )。 (a) public成员(b) private成员(c) protected成员(d) 友员 4.当一个派生类私有继承一个基类时,基类中的所有公有成员和保护成员成为派生类的( )。 (a) public成员(b) private成员(c) protected成员(d) 友员 5.当一个派生类保护继承一个基类时,基类中的所有公有成员和保护成员成为派生类的( )。 (a) public成员(b) private成员(c) protected成员(d)友员 6.不论派生类以何种方式继承基类,都不能直接使用基类的()。 (a) public 成员(b) private成员 (c) protected成员(d) 所有成员 7.下面描述中,错误的是( )。 (a) 在基类定义的public成员在公有继承的派生类中可见,也能在类外被访问。 (b) 在基类定义的protected成员在私有继承的派生类中可见。 (c) 在基类定义的公有静态成员在私有继承的派生类中可见。 (d) 访问声明可以在公有继承派生类中把基类的public成员声明为private成员。 8.在c++中,可以被派生类继承的函数是( = )。 (a) 成员函数(b)构造函数(c) 析构函数(d)友员函数 9.在创建派生类对象时,构造函数的执行顺序是( = )。 (a) 对象成员构造函数—基类构造函数—派生类本身的构造函数 (b) 派生类本身的构造函数—基类构造函数—对象成员构造函数 (c) 基类构造函数—派生类本身的构造函数—对象成员构造函数 (d) 基类构造函数—对象成员构造函数—派生类本身的构造函数 10.当不同的类具有相同的间接基类时,( c )。 (a) 各派生类无法按继承路线产生自己的基类版本 (b) 为了建立惟一的间接基类版本,应该声明间接基类为虚基类 (c) 为了建立惟一的间接基类版本,应该声明派生类虚继承基类 (d) 一旦声明虚继承,基类的性质就改变了,不能再定义新的派生类 二、阅读下列程序,写出执行结果 1. #include using namespace std; class Base { public : void get( int i,int j,int k,int l ) { a = i; b = j; x = k; y = l;

C (练习)第8章,继承与派生

一,单选题 1.下列描述中错误的是( )。 A 继承分为多重继承和单继承 B 对象间通信靠传递消息实现 C 在外面看不到对象的内部特征是基于对象的"模块独立性好"这个特征 D 类是具有共同属性、共同方法的对象的集合 参考答案 C 2. 设有以下定义: #include class A1 { public: void show1() { cout<<"class A1"<

3. 下列描述中哪个是正确的__________。?????? A 私有派生的子类无法访问父类的成员 B 类A的私有派生子类的派生类C无法初始化其祖先类A对象的属性,因为类A的成员对类C是不可访问的 C 私有派生类不能作为基类派生子类 D 私有派生类的所有子孙类将无法继续继承该类的成员 参考答案 B 4. 下面有关派生类的说法中,错误的是( )。 A 一个派生类可以作为另一个派生类的基类 B 一个派生类可以有多个基类 C 派生类构造函数可以将初始化参数值传递给基类的构造函数和对象成员的构造函数 D 具有继承关系时,基类成员在派生类中的访问权限不变 参考答案 D 5. 设置虚基类的目的是( )。 A 简化程序 B 消除二义性 C 提高运行效率 D 减少目标代码 参考答案 B 6. 有以下定义的子类: class A:public B { ... }; 则下面描述中正确的是 A A类中的成员函数可以访问B类中的private 数据成员 B A类中的成员函数只能访问B类中的protected数据成员。 C A类中的成员函数可以访问B类中的public数据成员。 D A类中的成员函数只能访问B类中的public数据成员 参考答案 C 7. 有如下类定义: class A { public: int x; };

c 继承与派生习题答案

继承与派生 概念填空题 1.1在C++中,三种派生方式的说明符号为public、private、protected不加说明,则默认的派生方式为private。 1.2当公有派生时,基类的公有成员成为派生类的公有成员;保护成员成为派生类的保护成员;私有成员成为派生类的不能直接访问成员。当保护派生时,基类的公有成员成为派生类的保护成员;保护成员成为派生类的保护成员;私有成员成为派生类的不能直接访问成员。 1.3 派生类的构造函数一般有3项工作要完成:首先基类初始化,其次成员对象初始化,最后执行派生类构造函数体。 1.4多继承时,多个基类中的同名的成员在派生类中由于标识符不唯一而出现二义性。在派生类中采用虚基类或作用域分辨符来消除该问题。 3.选择题 3.1下面对派生类的描述中,错误的是(D )。 A.一个派生类可以作为另外一个派生类的基类 B.派生类至少有一个基类 C.派生类的成员除了它自己的成员外,还包含了它的基类的成员 D.派生类中继承的基类成员的访问权限到派生类中保持不变 3.2下列对友元关系叙述正确的是(A)。 A.不能继承 B.是类与类的关系 C.是一个类的成员函数与另一个类的关系 D.提高程序的运行效率 3.3当保护继承时,基类的(B)在派生类中成为保护成员,不能通过派生类的对象来直接访问。 A.任何成员B.公有成员和保护成员 C.公有成员和私有成员D.私有成员 3.4设置虚基类的目的是(B)。 A.简化程序B.消除二义性 C.提高运行效率D.减少目标代码 3.5在公有派生情况下,有关派生类对象和基类对象的关系,不正确的叙述是(C )。 A.派生类的对象可以赋给基类的对象 B.派生类的对象可以初始化基类的引用 C.派生类的对象可以直接访问基类中的成员 D.派生类的对象的地址可以赋给指向基类的指针 3.6有如下类定义: class MyBASE{ int k; public: void set(int n) {k=n;} int get( ) const {return k;}

实验二 类的继承与派生

实验二类的继承与派生 一、实验目的 1. 掌握类的声明和使用。 2. 掌握对象的声明和使用。 3. 掌握具有不同访问属性的成员的访问方式。 4. 观察构造函数和析构函数的执行过程。 5. 学习声明和使用类的继承关系,声明派生类; 6. 熟悉不同继承方式下对基类成员的访问控制; 二.实验内容 1. 设计一个用于人事管理的People(人员)类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:number(编号)、sex(性别)、birthday(出生日期)、 id(身份证号)等等。具有的属性如下:姓名char name[11]、编号char number[7]、性别char sex[3]、生日birthday、身份证号charid[20]。其中“出生日期”声明为一个“日期”类内嵌子对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数、组合。在测试程序中声明people 类的对象数组,录入数据并显示。 2. 从people(人员)类派生出student(学生)类,添加属性:班号char classNO[7];从people 类派生出teacher(教师)类,添加属性:职务char pship[11]、部门char departt[21]。从student 类中派生出graduate(研究生)类,添加属性:专业char subject[21]、导师teacher adviser;从graduate 类和teacher 类派生出TA(助教博士生)类,重载相应的成员函数,测试这些类。 三 . 实验步骤 1.程序代码 第一题 #include #include using namespace std; class Date //日期类 { private: int year; int month; int day; public: Date(){} //默认构造 Date(int y,int m,int d) //带参构造 { year=y; month=m; day=d; }

第十一章课后答案文档

第十一章现代货币的创造机制 1.为什么说现今经济生活中的货币都是信用货币?找一找是否有不是信用货币的货币。 答:(1)现代经济生活中的货币都是信用货币。 信用货币替代金属货币,这一过程的萌芽早就存在于古老的信用工具之中;这一过程的不可逆转决定于商品经济覆盖整个经济生活,也即资本主义生产方式的产生和发展;这一过程的最终完成则是在经历了几百年之后的20世纪。 现代信用货币,其最早的典型形态是银行券。当前世界各国,包括我国在内,流通着的钞票都是银行券。关于银行券,由于银行券的发行权集中在中央银行,所以银行券的持有者就意味着握有对中央银行的债权。不论在法律形式上如何规定,人们总是把中央银行与国家联系在一起,在中国特别是这样。所以,人们认定,持有钞票就是持有对国家的债权;在人们心目中要求国家对钞票负责。 与银行券同时流通的有作为辅币的金属硬币。硬币已不是过去意义的金属货币,并不是以自己所含金属的价值流通。现在世界各国,硬币的发行通常统一于中央银行,也属于信用货币。 伴随着银行券的流通,不以现钞形态存在的货币也出现了。在19世纪和更早的年代,人们曾广泛讨论商业票据和支票由于背书流通所发挥的货币功能。到19世纪末和20世纪初,人们则已明确认识到:银行活期存款,其本身就应视为货币。至于商业票据和支票,由于背书流通的现象逐渐减少,已不再讨论它们是否是货币的问题。 银行活期存款,其根本特征是随时可据以签发支票用以购买和支付,同时也有权从中提取钞票。活期存款的名称多种多样。我国在出现新式银行以后多年,习惯称之为支票存款。实际上,由于管理习惯,活期存款有种种名称。如我国机关单位在银行中的经费存款账户就是一种活期存款账户。此外,更具有重要意义的是,由于金融创新,有些存款不叫活期存款但实际有活期存款的功能。如美国的NOW(可开出相当于支票的“转让支付命令”的账户)就是一例。这类账户上的金额,就其实际功能来说,无疑应同活期存款一样视为货币。 定期存款和居民在银行的储蓄存款,大多不能据以签发支票。直至进入20世纪,人们并没有统一的见解把它们明确地视为货币。但是,如果不把它们视为货币的存在形态,微观主体的货币持有量就是不完整的。而且宏观调控的实践,也会使人认识到,如果不把它们视为货币供给而只考察钞票和活期存款,那就很难解释这两部分货币之间的相互转化。现实生活中定期存款与活期存款,储蓄存款与活期存款,它们之间的界限也不断被打破。如储蓄,最初多是小额定期,后来不仅发展了活期储蓄,而且有了可以签发支票的储蓄。如大额存单是定期的,但在货币市场上可以买卖,已不完全是本来意义的定期存款。至于美国的ATS,更是一种可以自动地从定期存款账户向活期存款账户转移款项的制度。 所有上述以银行信用为基础的货币,除钞票和硬币外,国际货币基金组织概称之为“存款货币”。 (2)今天的货币形态,与历史上几千年只是简单的几种形态统治流通的情况不同,不仅极其多样,很难一一列举,而且变化迅速。但无论其形态如何多样,变化如何迅速,任何形态的货币,无一例外地都是信用货币。 2.在中央银行体制形成之前,存款货币银行可以发行自己的银行券,停止银行券发行后则保有创造存款货币的能力。不论是发钞票还是创造存款货币,银行是否自己就可以任意支用?这方面你曾存在过什么疑问,现在还有什么疑问? 答:不论是发钞票还是创造存款货币,银行都不可以任意支用。 银行券是随着资本主义银行的发展而首先在欧洲出现于流通中的一种用纸印制的货币。在中央银行体制形成之前,一般存款货币银行都可发行银行券。发行银行券的银行,需要保证随时可按面额随时兑付金币、银币。 关于存款货币银行发行银行券的收入支配问题,其关键是存款货币银行是否直接占有了发行收入。很显然这类行为是不存在的,钞票发行是存款货币银行的负债,存款货币银行以自己负债的增加换取资产业务和收益的增加,而且最终存款货币银行是要为自己的负债行为偿还的。所以虽然理论上这部分收入是存款货币银行并归存款货币银行所有,但实际上银行并不能任意支用这部分的收入。 3.能否不去翻检教材、笔记,拟出一份说明整个金融体系创造货币的纲要? 答:市场经济的货币供给机制,是由两个层次构成的货币创造系统。一是存款货币的创造层次,由存款货币银行的分散决策和它们的自我约束机制来实现;二是基础货币的创造层次,由中央银行的集中决策与宏观调控来实现。 (1)存款货币的创造层次 ①存款货币的创造必须具备两个紧密联系的必要前提条件:其一,各个银行对于自己所吸收的存款只需保留一定比例的准备金;其二,银行清算体系的形成。第一个条件使存款货币银行可以从存款中拿出一部分提供贷款或持有证券,由“原始存款”创造出大量“派生存款”;第二个条件使应收应付差额都可以在各种银行间的同业往来帐户或在清算中心开立的

第十一章 继承与派生 复习题

第十一章继承与派生复习题 1. 下面叙述错误的是( ) A. 派生类可以使用private派生 B. 对基类成员的访问必须是无二义性的 C. 基类成员的访问能力在派生类中维持不变 D. 赋值兼容规则也适用于多继承的组合 2.派生类的对象对它的基类成员进行访问,可以采用对象.或者对象指针-〉的 方式访问的是( ) A. 公有继承的公有成员 B. 公有继承的私有成员 C. 公有继承的保护成员 D. 私有继承的公有成员 3. 当私有继承时,在派生类中成为私有成员,不能通过派生类的对象来直接访 问该成员是基类的() A. 任何成员 B.公有成员和保护成员 C. 保护成员和私有成员 D.私有成员 4. C++的类有两种用法:一种是类的实例化,即生成类的对象,并参与系统的运 行;另一种是通过() A. 复用派生出新的类 B. 继承派生出新的类 C. 封装派生出新的类 D. 引用派生出新的类 5.当保护继承时,在派生类中成为保护成员,不能通过派生类的对象来直接访 问的成员是基类的() A.任何成员 B.公有成员和保护成员 C.保护成员和私有成员 D.私有成员 6.类B的数据成员中“有一个”A类的对象,这种类之间的关系是( ) A.继承关系 B.间接关系 C.组合关系 D.直接关系 7. 派生类的构造函数的成员初始化列表中,不能包含( ) A. 基类的构造函数 B. 派生类中子对象的初始化 C. 基类中子对象的初始化 D. 派生类中一般数据成员的初始化 8 公有成员提供了类对外部的接口,私有成员是类的内部实现,而不允许外界 访问,但允许派生类访问的成员是( ) A. 公有成员 B. 私有成员 C. 私有成员 D. 保护成员 9. 当公有继承时,在派生类中成为保护成员,不能通过派生类的对象来直接访

实验二 继承与派生 (完整版)

实验二继承和派生的基本概念 一、实验目的 继承与派生是面向对象的特性,是面向对象程序设计模拟客观世界的手段之一,本实验的内容包括介绍基类与派生关系,通过实验要求掌握以下内容。 1.掌握类继承与派生关系以及实现方法,理解类的层次结构。 2.掌握派生类构造函数初始化基类成员和对象成员的方法。 3.掌握赋值兼容原则,掌握派生类的复制构造函数和赋值运算符的定义。 二、实验内容 1.范例:定义一个继承与派生关系的类体系,在派生类中访问基类成员。先定义一个点类,包含x,y坐标数据成员,显示函数和计算面积的函数成员;以点为基类派生一个圆类, 增加表示半径的数据成员,重载显示和计算面积的函数;定义一个线段类,以两个点类对象作数据成员,定义显示、求面积及长度函数,线段类采用聚合方式,因为有两个端点, 不能用派生方式。编程测试所定义的类体系。 【程序】

cl3=cl1; cout<<"cl3圆面积:"<< cl3.Area()<< endl; cl3.Show(); cout<<"线面积:"<< ln1. Area()<<'\t'<<"线长度:"<< ln1. GetLength()<< endl; ln1.Show(); ln2.Show(); return 0; } 【注意】 在Point 类中,将Line 类定义为友元,便于在Line 类中访问;Point 类的x 和y 定义为Protected 访问权限,便于派生类访问。

注意派生类的构造函数中对基类数据成员的初始化方法(即 Circle(double xv,double yv,double vv):Point(xv,yv)), 以及构造函数中对对象成员的初始化方法(即 Line(double xv1,double yv1,double xv2,double yv2) : start(xv1,yv1),end(xv2,yv2){ } ) 【要求】 (1)建立工程,录入上述程序,改变数据实验之。 (2)修改Point 类的数据成员x ,y 的访问权限为private ,再运行,结果如何? 在Line类和Circle类中无法访问Point类的私有成员x,y. (3)如果不将Line 类设为 Point 类的友元,应采取什么措施?为哪个类增加数据或函数成员? 2.编程:多层派生练习,由上题Point 类和Circle 类继续派生出Cylinder 类。要求计算圆柱体的底面积、侧面积、全面积和体积。 #include #include using namespace std; const float PI=3.14; class Point {friend class Line; protected: double x,y; public: Point() {x=0;y=0;} Point(double xv,double yv) {x=xv;y=yv;} double Area() {return 0;} void Show() {cout<<"x="<

文本预览
相关文档 最新文档