第2章 类与对象
- 格式:ppt
- 大小:9.41 MB
- 文档页数:110
第2章类和对象一、选择题1、()不是构造函数的特征。
A、构造函数的函数名与类名相同;B、构造函数可以重载;C、构造函数可以设置缺省参数;D、构造函数必须指定类型说明。
2、下列关于构造函数的描述中,()是正确的。
A、构造函数可以设置缺省参数;B、构造函数可以被继承;C、构造函数可以对静态数据成员进行初始化;D、构造函数可以说明为虚函数;3、()是析构函数的特征。
A、析构函数可以有一个或多个参数;B、析构函数名与类名不同;C、析构函数的定义只能在类体内;D、一个类中只能定义一个析构函数;4、定义析构函数时,应该注意()。
A、其函数名与类名完全相同;B、函数返回类型是void类型;C、无形参,也不可重载;D、函数体中必须有delete语句;5、下列静态数据成员的特性中,()是错误的。
A、说明静态数据成员时前边要加修饰符static;B、静态数据成员要在类体外进行初始化;C、静态数据成员不是所有对象所共用的;D、引用静态数据成员时,要在其名称前加<类名>和作用域运算符;6、友元的作用是()。
A、提高程序的运用效率;B、加强类的封装性;C、实现数据的隐藏性;D、增加成员函数的种类;7、关于成员函数特征的下列描述中,()是错误的。
A、成员函数一定是内联函数;B、成员函数可以重载;C、成员函数可以设置缺省参数值;D、成员函数可以是静态的;8、已知:print()函数是一个类的常成员函数,它无返回值,下列表示中,()是正确的;A、void print() const;B、const void print();C、void const print();D、void print(const);9、在()情况下适宜采用inline定义内联函数。
A、函数体含有循环语句;B、函数体含有递归语句;C、函数代码小,频繁调用;D、函数代码多,不常调用;10、假定AB为一个类,则执行“AB a(4) , b[3] , * p[2] ;”语句时,自动调用该类构造函数的次数为( )。
第2章对象及其操作2.1 典型考题分析与解答1.[属性]窗口主要是针对窗体和控件设置的。
在Visual Basic中,窗体和控件被称为。
每个对象都可以用一组属性来刻画其特征,而[属性]窗口就是用来设置窗体或窗体中控件属性的。
【分析】本题主要是考核学习者对对象与属性这两个基本概念的理解与掌握。
(1)对象:从广义上来说,对象是客观事物的一个实体。
在可视化编程语言中,对象分为两类,一类称为预定义对象,预定义对象由系统提供,可以直接使用或对其进行操作,如工具箱中的控件、窗体和菜单等,另一类称为自定义对象,由用户自行定义。
(2)属性:属性是一个对象的特性,不同的对象有不同的属性。
对象常见的属性有标题(Caption)、名称(Name)、颜色(Color)、字体(Font)、是否可见(Visible)等。
通过修改对象的属性,可以改变对象的外观和功能。
属性可以在设计阶段通过属性窗口进行设置,也可以在运行阶段通过代码进行设置。
其中在代码中设置的语法格式为对象名.属性名=属性值例如:在窗体上加入一个文本框(TextBox)。
名称为“Text1”,文本框内容是“GoodMorning”。
则用下列语句进行设置Text1.text="Good Morning"【解答】对象2.关于VisualBasic“方法”概念的叙述错误的是。
A.方法是对象的一部分 B.方法是预先规定好的操作C.方法是对事件的响应 D.方法用于完成某些特定功能【分析】本题主要是考核学习者掌握对事件方法这一概念的理解。
这个题目有一定难度。
由于我们对事件方法的概念、事件方法与事件过程的区别不一定记得很清楚,这样会觉得几个选项好像都对。
尤其是选项A和C让人觉得似对似错。
因为对象、事件和方法三者之间既有联系也有区别。
首先,我们要理解其相互之间的区别:对象的属性是描述对象的一组特征。
如设置对象的名称、标题、颜色、大小等,有的可直接在设计界面时通过属性窗口进行设置,有的可以在事件过程或通用过程代码中进行设置。
3.2 类与对象的概念及定义本章目标掌握类与对象的概念掌握类的定义掌握对象的创建1.类与对象的概念在面向对象中,类和对象是最基本、最重要的组成单元。
类是对某一类事物的描述,是抽象的、概念上的定义;对象是实际存在的该类事物的每个个体,因而也称实例(instance)。
例如,在现实生活中,人就可以表示为一个类,因为人本身属于一种广义的概念,并不是一个具体的。
而某一个具体的人,就可以称为对象,可以通过各种信息完整地描述这个具体的人,如这个人的姓名、年龄、性别等信息,这些信息在面向对象的概念中就称为属性;当然人是可以吃饭、睡觉的,这些人的行为在类中就称为方法。
也就是说如果要使用一个类,就一定要产生对象,每个对象之间是靠各个属性的不同来区分的,而每个对象所具备的操作就是类中规定好的方法。
类与对象的关系如下图所示。
提示:类与对象的另一种解释。
关于类与对象,初学者在理解上是存在一定难度的,下面给大家作一个简单的比喻。
大家都应该知道,如果想要生产出汽车,则首先一定要设计出一个汽车的设计图纸(如下图所示),然后按照些图纸规定的结构生产汽车。
这样生产出的汽车结构和功能都是一样的,但是每辆车的具体内容,如各个汽车颜色、是否有天窗等都会存在一些差异。
在这个实例中,汽车设计图纸实际上就是规定出了汽车应该有的基本组成,包括外型、内部结构、发动机等信息的定义,那么这个图纸就可以称为一个类,显然只有图纸是无法使用的,而通过这个模型生产出的一辆辆的具体汽车是可以被用户使用的,所以就可以称其为对象。
2.类的定义从类的概念中可以了解,类是由属性和方法组成的。
属性中定义类一个个的具体信息,实际上一个属性就是一个变量,而方法是一些操作的行为,但是在Java 程序设计中,定义类也是按照具体的语法要求完成的,类的定义语法如下: 【格式1 类的定义】class 类名称{ 数据类型 属性; …public 返回值的数据类型 方法名称(参数类型 参数1, 参数类型 参数2, …){ 程序语句; [return 表达式;] }}提示:属性也可以称为变量。
java程序设计第三版课后答案Java程序设计第三版课后答案在编写Java程序设计第三版的课后答案时,我们首先需要了解这本书的结构和内容。
通常,一本好的教科书会包含理论讲解、示例代码、练习题和课后习题。
课后习题是帮助学生巩固和应用所学知识的重要部分。
以下是一些可能的课后答案示例,但请注意,具体答案需要根据实际的习题来编写。
第一章:Java基础问题1:简述Java语言的特点。
答案:Java是一种面向对象的编程语言,具有跨平台性、健壮性、安全性、简单性、多线程和动态性等特点。
它的跨平台性主要得益于Java虚拟机(JVM)的存在,使得Java程序可以在任何安装有JVM的设备上运行。
Java的健壮性体现在其严格的类型检查和异常处理机制。
安全性则体现在其对内存的自动管理以及对网络编程的内置支持。
问题2:编写一个Java程序,输出“Hello, World!”。
答案:```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```第二章:数据类型和运算符问题1:Java中的基本数据类型有哪些?答案:Java中的基本数据类型包括整型(byte, short, int, long),浮点型(float, double),字符型(char)和布尔型(boolean)。
问题2:编写一个Java程序,实现两个整数的加法,并输出结果。
答案:```javapublic class IntegerAddition {public static void main(String[] args) {int number1 = 5;int number2 = 10;int sum = number1 + number2;System.out.println("The sum is: " + sum);}}```第三章:控制流程问题1:Java中有哪些控制流程语句?答案:Java中的控制流程语句包括条件语句(if, switch),循环语句(for, while, do-while)以及跳转语句(break, continue, return)。
试用面向对象观点分析,研究本书第2章机票预定系统试用面向对象观点分析:机票预定系统(第2章)机票预定系统是一个复杂的软件系统,通过面向对象的观点进行分析可以帮助我们更好地理解系统的结构和功能。
类和对象:在机票预定系统中,可以识别出多个类和对象,包括但不限于顾客(Customer)类:表示系统中的顾客,具有属性如姓名、联系方式等,以及方法如预定机票、取消预定等。
航班(Flight)类:表示系统中的航班信息,具有属性如航班号、起飞时间、目的地等,以及方法如查询座位、预订座位等。
机票(Ticket)类:表示顾客预定的机票,具有属性如座位号、价格等。
预定(Reservation)类:表示顾客的预定记录,包括预定的航班和机票信息。
继承与多态性:在机票预定系统中,可以使用继承和多态性来实现系统的灵活性和扩展性。
可以创建一个抽象的预定接口(ReservationInterface),定义预定和取消预定的方法,然后让顾客类和预定类实现该接口,以实现不同类型的预定操作。
可以使用航班类和机票类的继承关系,如创建特定类型的航班(如国内航班、国际航班)和机票(如经济舱、商务舱),以满足不同顾客的需求。
封装与信息隐藏:在机票预定系统中,可以使用封装和信息隐藏来保护数据和实现系统的安全性和稳定性。
可以将类的属性和方法进行封装,只暴露必要的接口给外部使用,隐藏内部的实现细节。
例如,顾客类可以通过预定接口预订机票,而不需要知道具体的航班和机票类的实现细节。
关联与依赖关系:在机票预定系统中,存在多个类之间的关联和依赖关系,以实现系统的功能和交互。
顾客类和航班类之间可以建立关联关系,一个顾客可以预定多个航班,一个航班可以被多个顾客预定。
顾客类依赖于航班类和机票类,通过查询航班信息和预订机票来完成预定操作。
这种分析方法有助于设计和实现一个可扩展、可维护的系统,提高系统的灵活性和效率。