类、对象、方法、变量、属性定义

类、对象、方法、变量、属性定义

类、对象、变量、方法及属性

(2007-05-22 00:15:34)

转载▼

类:类是组成java程序的基本要素。类封装了一类对象的属性和方法。类是用来定义产生对象的模板。类的实现包括两部分:类声明和类体。

类体分为两部分:成员变量和局部变量。

1、成员变量和局部变更的类型可以是java中的任何一种数据类型.变量定义部分所定义的变更被称为类的成员变量,在方法体中定义的变量和方法的参数被称为局部变量。

2、成员变量在整个类内都有效,局部变量只在定义它的方法内有效。

3、成员变量又分为实例成员变量(实例变量)和类变量(静态变量)。、

4、如果局部变量的名字和成员变量的名字相同,则成员变量被隐藏,即这个成员变量在这个方法内暂时失效。

5、如果局部变量的名字和成员变量的名字相同,则成员变量被隐藏。这时如果想在该方法内使用成员变量,必须使用关键字this.

方法:一个类的类体由两部分组成:变量的定义和方法的定义。方法定义包括两部分:方法声明和方法体。例如:一个汽车的加速、减速、转弯、制动这些都是

该对象的方法。

方法重载:一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者参数个数不同,或者参数的类型不同。

构造方法:是一种特殊方法,它的名字必须与它所在的类的名字完全相同,而且没有类型,构造方法也可以重载。

类方法和实例方法

成员变量可分实例变量和类变量。类中的方法也分为实例方法和类方法。

1、对成员变量的操作只能放在方法中,方法可以对成员变量和方法体中自己定义的局部变量进行操作。

2、实例方法既能对类变量操作也能对实例变量操作,而类方法只能对类变量进行操作。

3、一个类中的方法可以互相调用,实例方法可以调用该类中的其他方法;类中的类方法只能调用该类的方法,不能调用实例方法。

对象:类是创建对象的模板。当使用一个类创建了一个对象时,也就是说给出了这个类的一个实例。“对象”其实我们并不陌生,天天都在和我们打交道,我们写字用的笔,骑的“宝马”等,太多了,世界万物,一切皆时对象!

属性:就是一个对象自用拥有的特性。例如:一辆汽车的颜色、重量、轮子数目、运行速度等这些都是该对象自身的属性。

好了,了解了概念还不行。还得自己再动手多写写代码。要学习java编程就必须学会怎样去编写类,怎么用java的语法去描述一类事物共有的属性和功能。属性通过变量来刻画,功能通过方法来体现,即方法操纵属性形成一定的算法来实现一个具体的功能。类把数据和对数据操作封装成一个整体。

C语言的类和对象

C语言的类和对象 【类实现了C++面向对象程序设计的基础,我们使用类来定义对象的属性,类是 C++封装的基本单元。】 一、----- 类 使用关键字class创建类,一个类声明定义了一个连接代码和一个数据的新类型,这个新的类型又可以用来声明该类的对象。因此,类又是逻辑逻辑抽象概念,儿对象是物理存在的,也就是说对象是类的实例。 类的声明语法上和结构相似。 [一下是完整的类的形式] class class_name { private data and functions access_specifier: data and functions access_specifiter: data and functions //…….. access_specifier:是 data and functions }object_list; 其中,object_list是任选项,如过存在,他声明类的对象。access_specifier为下面的三个关键字之一: Public private protected 默认时,在类声明的函数和数据属于该类私有,只能被该类的成员访问。如果使用,pubilc访问限定符号,函数和程序就可以被其他部分访问。Protected访问限定符,仅在涉及继承的时候才需要(十五章了解)。访问限定符已经使用,其作用就保持到遇到别的访问限定符或者达到类声明的结束处。 在类声明内可以任意改变访问说明符号,对于某些声明,可以转换位public,然后再转换成private。 [如下所述] /******************************* ··构造函数和析构函数学习··· *******************************/ //Using a constructor and destructor. /******************************* 声明C++ 程序头文件 *******************************/ #include #include #include #include /******************************* ·名字空间:组织大型的程序结构·

JAVA类和对象的关系

1、JAVA中的参数传递问题(理解内存图) 基本类型:形式参数的改变对实际参数没有影响 引用类型:形式参数的改变直接影响实际参数 2、面向对象(理解,升就业班问说说什么是面向对象和思想特点) 1、面向对象(从三点回答) A面向过程是以函数为基础,完成各种操作,强调的是过程 B面向对象以对象为基础,完成各种操作,强调的是对象,结果 C面向对象是基于面向过程的 2、面向对象的思想特点: a)是一种更符合人们思考习惯的思想 b)把复杂的事情简单化 c)把我们从执行者变成了指挥者 3、举例: a)买电脑 b)洗衣做饭 c)旅游 d)把大象装进冰箱(伪代码体现) 4、事物是如何体现的 a)属性有哪些特征名词提取法 b)行为有哪些功能 5、类与对象的关系(掌握) 把事物转换成类 A:成员变量 定义在类中,方法外 B:成员方法 和以前的区别是去掉static 把这个说完还没有说道类与对象的概念,对不对 类:是相关的属性和行为的集合,集合就是一堆东西,是一个抽象的概念 对象:是某种事物的具体的存在,具体的表现形式 举例: 学生:类 对象:小明 6、案例 A学生类 B手机类 C汽车类(在这里画了内存图,有空看一下) 7、如何使用呢 a)创建对象 i.格式 a)类名变量= new 类名() b)使用成员变量和成员方法

i.对象名.成员变量 ii.对象名.成员方法 8、成员变量和局部变量的区别(理解) A 定义位置 成员变量:在类中方法外 局部变量,在类中方法中,或者方法上的形式参数 B 初始化的区别 成员变量:有默认的初始化值 局部变量:无 C 存储位置 成员变量:堆随着对象的存在而存在 局部变量:栈随着方法的存在而存在 9、匿名对象 a)概念:没有名字的对象 b)使用场景 i.当对象中的方法只掉用一次的情况下使用(一般不用,测试时使用)new Student().sayHello(); ii.匿名对象作为实际参数传递

实验3 类的定义、对象的建立与使用

实验报告_实验3 类的定义、对象的建立与使用(学 生学号_姓名) 实验目的: 1、理解C++中class与struct的区别; 2、掌握类的定义以及成员函数的定义方法; 3、掌握对象的定义和对象成员的访问方式; 4、熟悉this指针的基本用法。 实验内容 二、((基础题)请按照下列要求定义一个Clock时钟类,并创建对象,再调用相应方法: 程序代码: //日期类的应用 #include using namespace std; class Clock // 定义日期类 { public: // 定义公有成员函数 void setTime(int h, int m, int s); void showTime(); private: // 定义私有数据成员 int hour; int minute;

int second; }; // 类定义体的结束 //类实现部分 void Clock::setTime(int h, int m, int s) { hour = h; minute = m; second = s; } void Clock::showTime() { cout << "设置时间为" << hour <<":"<< minute <<":"<< second << endl; } int main() { Clock now; now.setTime(8,30, 0); now.showTime(); return 0; } 三、(基础题)请按要求,编写程序(请将类的定义、成员函数的实现、类的使用分开): rect.h代码: #include

Java练习题

【练习题】01.类的成员变量: 猜数字游戏:一个类A有一个成员变量v,有一个初值100。定义一个类,对A 类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。 【练习题】02.类的成员变量: 请定义一个交通工具(Vehicle)的类,其中有: 属性:速度(speed),体积(size)等等 方法:移动(move()),设置速度(setSpeed(int speed)),加速speedUp(),减速speedDown()等等. 最后在测试类Vehicle中的main()中实例化一个交通工具对象,并通过方法给它初始化speed,size的值,并且通过打印出来。另外,调用加速,减速的方法对速度进行改变。 【练习题】03.类的成员变量与方法、构造方法 在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。 定义名为MyTime的类,其中应有三个整型成员:时(hour),分(minute),秒(second),为了保证数据的安全性,这三个成员变量应声明为私有。为MyTime类定义构造方法,以方便创建对象时初始化成员变量。再定义diaplay 方法,用于将时间信息打印出来。 为MyTime类添加以下方法: addSecond(int sec) addMinute(int min) addHour(int hou) subSecond(int sec) subMinute(int min) subHour(int hou) 分别对时、分、秒进行加减运算。 【练习题】04.构造方法 编写Java程序,模拟简单的计算器。 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。编写构造方法,赋予n1和n2初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成员方法,分别对两个成员变量执行加、减、乘、除的运算。 在main方法中创建Number类的对象,调用各个方法,并显示计算结果。 【练习题】05.构造方法: 编写Java程序,用于显示人的姓名和年龄。定义一个人类(Person),该类中应该有两个私有属性,姓名(name)和年龄(age)。定义构造方法,用来初始化数据成员。再定义显示(display)方法,将姓名和年龄打印出来。 在main方法中创建人类的实例,然后将信息显示。

类的定义和对象的创建

实验二类的定义和对象的创建 实验目的 1、学习定义类和使用类 2、学习创建的对象和使用对象 实验内容 1、定义一个Student类。其中定义有“学号”“姓名”“班级”“性别”“年龄”等属性,定 义一个无参数的构造器和至少一个有参数的构造器,定义“获得学号”“获得姓名”“获得班级”“获得性别”“获得年龄”“修改年龄”等方法。另外定义一个方法: public String toString( ) 把Student类的对象的所有属性信息组合成一个字符串,并检验这个功能的程序体现。 public class Student { private int 学号; private String 姓名; private String 班级; private char 性别; private int 年龄; public Student(int a, String b, String c, char d, int e) { 学号= a; 姓名= b; 班级= c; 性别= d; 年龄= e; } public Strudent() { this(0, "张三" ,"软件0901" ,'男', 19); } public int get学号() { return 学号; } public String get姓名() { return 姓名; } public String get班级() { return 班级; } public char get性别() { return 性别; } public int get年龄()

{ return 年龄; } public void set学号(int a) { 学号=a; } public void set姓名(String a ) { 姓名=a; } public void set班级(String a) { 班级= a; } public void set性别( char a) { 性别= a ; } public void set年龄(int a) { 年龄= a; } public String toString() { return "该学生的学号为"+ 学号+ " 姓名为"+姓名+" 班级为"+班级+ " 性别为" +性别+ " 年龄为" +年龄"; } } 2、编程实现圆类,其中包括计算圆周长和面积的方法,并测试方法的正确性。 public class Yuan { private double X, Y, R; public Yuan(double a, double b, double c) { X=a; Y=b; R=c; } public double MianJi() { return 3.1416*R*R; } public double ZhouChang() { return 2*3.1416*R; } public static void main(String[] args) { Yuan s=new Yuan(2,3,4); System.out.println("该圆的面积是"+ s.MianJi()); System.out.println("该圆的周长是"+ s.ZhouChang()); } }

类与对象

类与对象1:Point类1 Description 定义一个Point类,数据成员包括私有数据成员为double类型的点坐标x,y;成员函数包括构造函数Point(用于实现对数据成员x,y的初始化),成员函数Display(用于输出点坐标x、y,输出格式为点坐标用逗号分隔并半角圆括号括起来)。 main函数如下(不得修改main函数): int main() { double x,y; cin>>x>>y; Point p1(x,y); p1.Display(); return 0; } Input Output Sample Input 12.5 22.7 Sample Output (12.5,22.7) ************************************************** #include using namespace std; class Point { public: Point(double xx,double yy) { x=xx;y=yy; } void Display() { cout<<"("<>x>>y; Point p1(x,y); p1.Display(); return 0; } 类与对象2:Point类2 Description

定义一个Point类,数据成员包括私有数据成员为double类型的点坐标x,y;成员函数包括构造函数Point(用于实现对数据成员x,y的初始化)、成员函数Set(用于改变数据成员x、y的值)、成员函数Display(用于输出点坐标x、y,输出格式为点坐标用逗号分隔并半角圆括号括起来)。 main函数如下(不得修改main函数): int main() { double x1,y1,x2,y2; cin>>x1>>y1; cin>>x2>>y2; Point p1(x1,y1); p1.Display(); p1.Set(x2,y2); p1.Display(); return 0; } Input Output Sample Input 10 25.5 5.5 20 Sample Output (10,25.5) (5.5,20) ************************************************** #include using namespace std; class Point { public: Point(double xx,double yy) { x=xx;y=yy; } void Display() { cout<<"("<>x1>>y1; cin>>x2>>y2;

C中类与类定义及具体使用方法

C中类与类定义及具体 使用方法 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】

类模板 类模板也称为类属类或类生成类,是为类定义的一种模式,它使类中的一些数据成员和成员函数的参数或返回值可以取任意的数据类型。类模颁布是一个具体的类,它代表着一族类,是这一族类的统一模式。使用类模板就是要将它实例化为具体的类。 定义类模板的一般形式为: template class类名 { //…… } 其中,template是声明类模板的关键字;template后面的尖括号不能省略;数据类型参数标识符是类模板中参数化的类型名,当实例化类模板时,它将由一个具体的类型来代替。 定义类模板时,可以声明多个类型参数标识符,各标识符之间用逗号分开。 类定义中,凡要采用标准数据类型的数据成员、成员函数的参数或返回类型的前面都要加上类型标识符。 如果类中的成员函数要在类的声明之外定义,则它必须是模板函数。其定义形式为: template 数据类型参数标识符类名<数据类型参数标识符>∷函数名(数据类型参数标识符形参1,……,数据类型参数标识符形参n) { 函数体 } 模板类 将类模板的模板参数实例化后生成的具体的类,就是模板类。由类模板生成模板类的一般形式为:

类名<数据类型参数标识符>对象名1,对象名2,…,对象名n; 这里的数据类型参数标识符对应的是对象实际需要的数据类型。 应用举例 例函数模板的声明和模板函数的生成的例。 #include<> template//声明模板函数,T为数据类型参数标识符voidswap(T&x,T&y)//定义模板函数 { Tz;//变量z可取任意数据类型及模板参数类型T z=y; y=x; x=z; } voidmain() { intm=1,n=5; doublea=,b=; cout<<”m=”<

汇编变量类型及定义

变量类型及定义整理:太虚野老

汇编中的数据类型如下表所示: 一、MASM数据类型: 类型描述类型缩写位数字节数数值范围 字节BYTE DB 8 1 0..255 有符号字节SBYTE DB 8 1 -128..127 字WORD DW 16 2 0..65535 有符号字SWORD DW 16 2 -32768..32767 双字DWORD DD 32 4 0..4294967295 有符号双字SDWORD DD 32 4 -2147483648..2147483647 远字FWORD DF 48 6 四字QWORD DQ 64 8 十字节TBYTE DT 80 10 单精度浮点数REAL4 32 4 1.18*10-38..3.40*1038 双精度浮点数REAL8 64 8 2.23*10-308..1.79*10308 10字节浮点数REAL10 80 10 3.37*10-4932..1.18*104932 代码清单Test5_1.asm: ; Test5_1.asm .386 .xmm .model flat, stdcall option casemap:none include windows.inc include kernel32.inc include masm32.inc include debug.inc includelib kernel32.lib includelib masm32.lib includelib debug.lib include user32.inc includelib user32.lib .data v1 dd 10 ;十进制 v2 dd 10d ;十进制(Decimal) v3 dd 10t ;十进制 v4 dd 10b ;二进制(Binary)

变量的定义与声明

1.变量的定义 从前面的章节可以看出,程序中所有的东西几乎都有名字。然而字面量却是个例外,它没有名字。那么使用变量,我们就可以为某个值取名字了。实际上,我们是为系统内存中用于保存数据的某块空间取名字。 ANSI C规定:变量必须“先定义、后使用”,因此当用C定义变量时,不仅需要指定变量名,而且还必须告诉编译器其存储的数据类型,变量类型告诉编译器应该在内存中为变量名分配多大的存储单元,用来存放相应变量的值(变量值),而变量仅仅是存储单元的别名,供变量使用的最小存储单元是字节(Byte)。 由此可见,每个变量都占据一个特定的位置,每个存储单元的位置都由“地址”唯一确定并引用,就像一条街道上的房子由它们的门牌号码标识一样。即从变量中取值就是通过变量名找到相应的存储地址,然后读取该存储单元中的值,而写一个变量就是将变量的值存放到与之相应的存储地址中去。 由于变量的定义不是可执行代码,因此要求局部变量的定义必须位于用“{}包围的程序块”的开头,即在可执行代码的前面。比如: int lower_limit = 80; //定义lower_limit为整型变量 即在定义lower_limit为int类型数据时,系统就已经为变量lower_limit分配了存储单元。请注意区分变量名和变量值这两个不同的概念,其中,lower_limit为变量名,80为变量lower_limit的值,即存放在变量lower_limit的存储单元中的数据。 那么到底如何获得变量的地址呢?C语言使用“&(地址运算符)加变量名”的方式获取变量的地址,比如,&lower_limit就代表变量lower_limit的地址,详见后续相关章节的描述。 一个定义只能指定一种变量类型,虽然后面所带的变量表可以包含一个或多个该类型的变量: int lower_limit , upper_limit , sum; 但如果将一个定义语句中的多个变量拆开在多个定义语句中定义的话: int lower_limit; // lower_limit为数据下限 int upper_limit;// upper_limit为数据上限 int sum;// sum为求和的结果

给变量下定义的方法

第五章给变量下定义的方法 科学研究来不得半点马虎,没有精确也就没有科学。在教育研究之前,首先要对研究问题中的变量作全面、清晰地了解。对研究问题中变量的表述要尽可能清晰、准确,不得含糊其辞。因此,我们要对研究问题中涉及的某些词语或术语作出精确的说明,为了便于研究的可操作性和可行性,还有必要对有关变量涉及的词语或术语下操作性定义。给变量下抽象定义和操作性定义是研究科学性的体现,也是研究者必须具备的基本素质。 一、变量的定义与操作 在研究设计过程中,我们常常会遇到教育领域中的一些变量(概念),如教学,素质,教学目标,创造性等。对这些变量,不同的人由于经验、认识、所处地位、理解角度等的差异,可能会作出不同的解释。为了使其他人能在共同理解的基础上探讨问题,为了使研究结论准确可靠,研究者必须厘清概念的含义,在厘清概念的基础上,确定测量方法或操作性定义。厘清概念通常是给概念下抽象性定义(概念性定义),规定测量指标则是给概念下操作性定义。 课题的主要变量或概念一经确定,接下来的事就是要给这些变量下定义,界定变量的含义。但是变量是有变化、有差异的因素,人们对它们的理解和认识往往不一致,解释也不尽相同,另外人们通常所使用的词汇术语的含义是模糊的和会意的,变量本身不会告诉我们需要收集什么样的资料或怎样进行测量,然而科学研究要求我们必须使每一个术语具有明确的含义。因此在研究设计时有必要使研究变量精确化、概念化,具体描述变量含义,赋予变量以意义,在某种程度上使研究者和读者形成共识。 当然现实生活中的模糊观念是可以转化为可认知的、可测量的概念的。美国心理学家桑代克(E. L. Thorndike)认为:凡客观存在的事物都有其数量,任何存在的事物都是可以测量的,只不过测量的方式方法不同罢了。只要变量存在,就能对其进行测量,这是科学研究的基本原则和前提。但测量要达到的精确程度是有区别的。下面是巴比(Earl Babbie)在《社会研究方法》一书中所用的一个例子①: 我:社会科学家可以对任何存在的事物进行测量。 你:哈!我赌你做不到。 我:你告诉我要测量什么吧,我可以告诉你如何去测量它。 你:好吧,怎样测量“偏见”。 我:不错的选择。不过,我不愿意把时间浪费在一些根本不存在的事物上。你说,社会上真的有偏见吗? 你:当然!谁都知道有偏见。谁都知道!如果你够聪明的话,我想你也知道。傻瓜也知道。 我:从前每个人都认为地球是平的。我想知道的是,你怎么知道就真的存在偏见? 你:好了,好了!你似乎不会“观察”。好了,“我看见过偏见。” 我:你到底看到了什么?偏见是怎样存在的呢? 你:我认识一个生意人,他说他永远也不会让女人做主管,因为他认为女人不着边际,而且没有理性。看吧!这个例子不错吧! ①(美)巴比著;邱泽奇译,《社会研究方法》(上册),华夏出版社,2000年,第150-151页。

实验6 类的定义与使用--练习

实验6 类的定义与使用 一、实验目的和任务 类的定义与使用 1)掌握类的概念、定义格式、类与结构的关系、类的成员属性和类的封装性; 2)掌握类对象的定义; 3)理解类的成员的访问控制的含义,公有、私有和保护成员的区别; 4)掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义和重载构造函数。能够根据给定的要求定义类并实现类的成员函数; 二、实验原理介绍 通过建立类及对象,用类的成员函数和对象访问类的成员; 利用建立类的构造函数,完成类的成员的初始化工作; 三、实验设备介绍 软件需求: Visual C++ 6.0 四、实验内容和步骤 1、声明一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop。其中rank为枚举类型,声明为enum CPU_Rank { p1=1,p2,p3,p4,p5,p6,p7},frequency为单位是MHz的整形数,voltage为浮点型的电压值。观察构造函数和析构函数的调用顺序。 2、声明一个简单的Computer类,有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等等,有两个公有成员函数run、stop。cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,声明并实现这个类。 3、(选做)设计一个用于人事管理的People(人员)类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:number(编号)、sex(性别)、birthday(出生日期)、id(身份证号)等等。其中“出生日期”声明为一个“日期”类内嵌子对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数。组合。 思考题 1、注意类的定义; 2、类的成员函数的访问方式; 五、注意事项和要求 要求学生要提前准备实验的内容 实验完成后要求写出实验报告

JAVA类与对象的创建

试验四 类和对象的创建 一.类的定义 类是组成Java程序的基本要素。类封装了一类对象的状态和方法。类用来定义对象的模板。 类的实现包括两部分:类声明和类体。基本格式为: 修饰符class类名[extends父类名]{ /*类体的内容*/ } 1.类声明 以下是一个类声明的例子。 class People成为类声明,People是类名。习惯上,类名的第一个字母大写,但这不是必须的。类的名字不能是Java中的关键字,要符合标识符规定,即类的名字可以由字母、下划线、数字或美元符号组成,并且第一个字母不能是数字。但给类命名时,最好遵守下列规则: (1)如果类名使用拉丁字母,那么名字的首写字母使用大写字母,如Hello、Time、People等。 (2)类名最好容易识别,当类名由几个“单词”复合而成时,每个单词的首写字母使用大写,如BeijingTi me、AmericanGame、HelloChina等。 2.类体 编写类的目的是为了描述一类事物共有的属性和功能,描述过程由类体来实现。类声明之后的一对大括号“{”、“}”以及它们之间的内容称为类体,大括号之间的内容称为类体的内容。 类体的内容由两部分构成:一部分是变量的定义,用来刻画属性;另一部分是方法的定义,用来刻画功能。 下面是一个类名为“Trapezia”的类,类体内容的变量定义部分定义了4个float类型变量:top、bottom、h igh和laderArea,方法定义部分定义了两个方法:“getArea”和“setHigh”。

二.对象 1.对象的创建 创建一个对象包括对象的声明和为对象分配内存两个步骤。 (1)对象的声明。 一般格式为: 类的名字对象名字; 如: 这里People是类的名字,zhubajie是我们声明的对象的名字。 (2)为声明的对象分配内存。 使用new运算符和类的构造方法为声明的对象分配内存,如果类中没有构造方法,系统会调用默认的构造方法(你一定还记得构造方法的名字必须和类名相同这一规定),如: 例1: 「注」如果类里定义了一个或多个构造方法,那么Java不提供默认的构造方法。 2.对象的使用 对象不仅可以改变自己变量的状态,而且还拥有了使用创建它的那个类中的方法的能力,对象通过使用这些方法可以产生一定的行为。 通过使用运算符“.”,对象可以实现对自己的变量访问和方法的调用。 例2:

类和对象练习题

类和对象 一、选择题 1、下面对方法的作用描述不正确的是:( d d) A、使程序结构清晰 B、功能复用 C、代码简洁 D、重复代码 2、方法内定义的变量:( b b ) A 、一定在方法内所有位置可见B、可能在方法内的局部位置可见 C、在方法外可以使用 D、在方法外可见 3、方法的形参:(a) A、可以没有 B、至少有一个 C、必须定义多个形参 D、只能是简单变量 4、方法的调用:(c) A、必须是一条完整的语句 B、只能是一个表达式 C、可能是语句,也可能是表达式 D、必须提供实际参数 5、return 语句:( d d) A、不能用来返回对象 B、只可以返回数值 C、方法都必须含有 D、一个方法中可以有多个return 语句 6、void 的含义:( d d) A、方法体为空 B、方法体没有意义 C、定义方法时必须使用 D、方法没有返回值 7、main()方法的返回类型是:( c c ) A 、boolean B、int C、void D、static 8、方法重载所涉及的方法:( a ) A、有相同的名字 B、参数个数必须不同 C、参数类型必须不同 D、返回类型必须不同 9、下面关于类和对象之间关系的描述,正确的是( c c ) A、联接关系B、包含关系C、具体与抽象的关系D、类是对象的具体化 10、下面关于java中类的说法哪个是不正确的( c ) A、类体中只能有变量定义和成员方法的定义,不能有其他语句。 B、构造方法是类中的特殊方法。 C、类一定要声明为public的,才可以执行。

D、一个java文件中可以有多个class定义。 11、下列哪个类声明是正确的( d) A、public void H1{…} B 、public class Move(){…} C、public class void number{} D、public class Car{…} 12、下面的方法声明中,哪个是正确的( c c) A、public class methodName(){} B、public void int methodName(){} C、public void methodName(){} D、public void methodName{} 13、下述哪些说法是不正确的?( b ) A、实例变量是类的成员变量 B、实例变量是用static关键字声明的 C、方法变量在方法执行时创建 D、方法变量在使用之前必须初始化 14、下面对构造方法的描述不正确是( b b )。 A、系统提供默认的构造方法 B、构造方法可以有参数,所以也可以有返回值 C、构造方法可以重载 D、构造方法可以设置参数 15、定义类头时,不可能用到的关键字是( bb b)。 A、class B、private C、extends D、public 16、下列类头定义中,错误的是( a )。 A、public x extends y {...} B、public class x extends y {...} C、class x extends y implements y1 {...} D、class x {...} 17、设A为已定义的类名,下列声明A类的对象a的语句中正确的是( d ) 。 A、float A a; B、public A a=A( ); C、A a=new int( ); D、static A a=new A( ); 18、设i , j为类X中定义的int型变量名,下列X类的构造方法中不正确的是( a )。 A、void X(int k ){ i=k; } B、X(int k ){ i=k; } C、X(int m, int n ){ i=m; j=n; } D、X( ){i=0;j=0; } 19、有一个类A,以下为其构造方法的声明,其中正确的是

类的定义与使用

一、实验目的和任务 类的定义与使用 1)掌握类的概念、定义格式、类与结构的关系、类的成员属性和类的封装性; 2)掌握类对象的定义; 3)理解类的成员的访问控制的含义,公有、私有和保护成员的区别; 4)掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义和重载构造函数。能够根据给定的要求定义类并实现类的成员函数; 二、实验原理介绍 验证性实验; 通过建立类及对象,用类的成员函数和对象访问类的成员; 利用建立类的构造函数,完成类的成员的初始化工作; 三、实验设备介绍 软件需求: Visual C++ 6.0 四、实验内容 1、声明一个CPU类,包含等级(rank)、频率(freauency)、电压(voltage)等属性,有两个公有成员函数run、stop。其中rank为枚举类型,声明为enum CPU_Rank { p1=1,p2,p3,p4,p5,p6,p7},frequency为单位是MHz的整形数,voltage为浮点型的电压值。观察构造函数和析构函数的调用顺序。 实验原理:构造CPU类私有成员为等级(rank)、频率(freauency)、电压(voltage),其中rank为枚举类型,声明为enum CPU_Rank { p1=1,p2,p3,p4,p5,p6,p7},然后设置public 的构造函数CPU,有频率和电压。使频率f等于形参x,电压u等于y,此为构造的函数。然后运用析构函数,其符号为~,运用析构函数。一个类只能定义一个析构函数,析构函数

没有形参,且其顺序较特殊,对于含有多个对象的程序,先创建的对象后析构,后创建的对象先析构。所以析构函数出现在最后。此程序中,三个对象CPU run stop ,CPU析构,在主函数中运行了构造函数,run stop执行后析构。 实验源程序: #include class CPU {private: int f; double u; enum CPU_Rank{P1=1,P2,P3,P4,P5,P6,P7}; public: CPU(int x,double y) { f=x; u=y; cout<<"调用构造函数"<<"f="<

相关主题
相关文档
最新文档