作业+实验_类和对象基础(7页).doc

上传人:1595****071 文档编号:37163881 上传时间:2022-08-30 格式:DOC 页数:7 大小:185.50KB
返回 下载 相关 举报
作业+实验_类和对象基础(7页).doc_第1页
第1页 / 共7页
作业+实验_类和对象基础(7页).doc_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《作业+实验_类和对象基础(7页).doc》由会员分享,可在线阅读,更多相关《作业+实验_类和对象基础(7页).doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-作业+实验_类和对象基础-第 7 页类和对象基础一、 选择题1、 下列哪一个不属于JAVA语言的数据类型A)指针类型B)类C)数组D)浮点类型答案:A2、 声明类的关链字是A)ClassB)classC)voidD)main答案: B3、 不属于java类中的变量的是A)实例成员变量B)类成员变量C)局部变量D)寄存器变量答案: D4、 在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同,这种面向对象程序特性称为A)隐藏B)覆盖C)重载D)Java不支持此特性答案:C5、 不使用static修饰符限定的方法称为实例成员方法,下列哪

2、一个说法是不正确的A)成员方法可以直接调用父类的成员方法B)成员方法可以直接调用父类的类方法C)成员方法不可以直接调用其他类的成员方法D)成员方法可以直接调用本类的类方法答案:6、 函数重载是指A)两个或两个以上的函数取相同的函数名,但形参的个数或类型不同B)两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同C)两个以上的函数名字不同,但形参的个数或类型相同D)两个以上的函数取相同的函数名,并且函数的返回类型相同答案:A7、 下述哪个说法是不正确的A)局部变量在使用之前无需初始化,因为有该变量类型的默认值B)类成员变量由系统自动进行初始化,也无需初始化C)参数的作用域就是所在

3、的方法D)for语句中定义的变量,当for语句执行完时,该变量就消亡了答案:A8、 下列代码的执行结果是: public class Test6 public static void main(String args) int a=4,b=6,c=8; String s=abc; System.out.println(a+b+s+c); System.out.println(); A)ababccB)464688C)46abc8D)10abc8答案:D9、 下列关于变量作用域的说法中,正确的一项是A)方法参数的作用域是方法外部代码段;B)异常处理参数的作用域是方法外部代码段;C)局部变量的作用

4、域是整个类;D)局部变量的作用域是类的某个方法;答案:D10、 下列关于JAVA语言中要使用的一个变量,不正确的是:A)在JAVA程序中要使用一个变量,必须先对其进行声明;B)变量声明语句可以在程序的任何地方,只要在变量使用前就可以;C)变量不可以在其作用域之外使用;D)局部变量在使用之前可以不初始化,系统使用默认的初始值;答案:D11. 一个int型整数和一个double型浮点数进行加法运算,结果类型是( )A. Int型B. Double型C. Float型D. Long型答案:B12. 一个可以独立运行的Java应用程序( )A. 可以有一个或多个main方法B. 最多有两个main方法

5、C. 可以有一个或0个main方法D. 只能有一个main方法答案:D13. ( ) 方法是JavaApplication执行的入口点。A. Main方法B. Init方法C. Man方法答案:A13. 以下的变量定义语句中,合法的是( )A. Int long=3.2345333L;B. Byte $_b1=224333;C. Float _*5=345.33532F;D. Double a=Double.MAX_VALUE;答案:D14. 下列关于Java程序结果的描述中,不正确的一项是( )A. 一个Java源文件可以包括多个类定义,但只能有一个public类;B. 一个Java源文件可

6、以包括一个package语句;C. 一个Java源文件可以有多个public类;D. 源文件名和程序类名必须保持一致。答案:C二、 分析题15. 下面程序是否通过编译,为什么?public class abcint age;String sname;age=23;答案:实测变量的赋值只能在定义的时候就赋值或者在某个方法中赋值。16. 指出下面出错的地方,为什么?a) class abcb) int age;c) String sname;d) static String classer;e) void setAge( age)f) age=age;g) static static void s

7、peak()h) System.out.println(“年龄:”+age+”;班级:”+classer);答案: (e)没有为传递进来的参数age定义一个int类型 (f)第一个age没有加this (h)多写了一个static (i)在静态的方法中不能调用非静态变量age17. 源代码如下所示,你觉得程序能否通过编译呢,如果可以通过编译输出的结果会是什么呢?public class TestOverLoadpublic static void main(String args)Test test = new Test();test.print(null); class Testpublic

8、 void print(String some)System.out.println(String version print);public void print(Object some)System.out.println(Object version print); 答案: 能,输出String version print18. 如果在上题中TestOverLoad类中再添加一个方法如下所示,这样会如何呢?public class TestOverLoadpublic static void main(String args)Test test = new Test();test.pri

9、nt(null); class Testpublic void print(String some)System.out.println(String version print);public void print(Object some)System.out.println(Object version print); public void print(StringBuffer some)System.out.println(StringBuffer version print); 答案:应为实例化Test后传递的参数是null,系统就自动优先调用子类的函数。而String和String

10、Buffer都是Object的子类,但是String和StringBuffer二者没有任何继承关系。属于同一级,因此系统不知道调用谁,所以报错。19. 下面可否通过编译,为什么?public class A public int aMethod(String s)System.out.println(s);return 1; public void aMethod(String s)System.out.println(s); 答案:出错,重载限定在传递参数的个数或者是类型不同,顺序不同,但是这题是返回类型不同,方法一样,但是其参数相同,不符合重载的要求,但是他们的方法名都一样,所以会出错。三

11、、简答题1、类和对象的关系? 类定义了一种新的数据类型,可以用新类型来创建该类型的对象。类(class)是对象(object)的模板,而对象是类的一个实例。2、定义一个类需要包含什么元素?一个类包含属性和方法。该类具有哪些特征使用属性表示,该类具有哪些行为使用方法来表示。3、如何使用this关键字?This指向自己的引用,即当前方法所在的对象。它的一个主要作用是要将自己这个对象当做参数,传送给别的对象中的犯法。或者在类定义时使用this来引用自己的属性或方法。4、类体中的方法包含哪些分类?按返回值分:有返回值、无返回值按参数分:无参数、有参数(单个参数,多个参数)按范围或功能分:实例方法、类方

12、法、构造方法5. 什么时候为类中的实例变量分配内存空间?在使用类创建实例对象时会为其分配空间。(通过new关键字和构造函数为其实例化的时候)6. 什么叫方法的重载?构造方法可以重载吗?一个类中可以有多个方法具有相同的名称,但这些犯法的参数必须不同,即或者是参数个数不同,或者是参数的类型不同,或者是参数的顺序不同。构造方法可以重载,而且构造方法的重载是方法中使用频率最高的一种。7. 简述类变量和实例变量的不同?(1)不同对象的实例变量将分配不同的内存空间,实例变量则属性独有,改变某一个对象的值不影响其他对象;而所有对象的类变量占用同一块内存空间,类变量是所有对象共有的,改变其中一个对象的值,其他

13、对象得到的就是改变后的结果。 (2)类变量在类被加载到内存是就为其分配内存空间,而实例变量在使用new创建对象时,才为其分配内存空间; (3) 类变量可以通过对象和类名访问,而实例变量只能通过对象访问。 (4)类变量通过static关键字修饰,实例变量不需要。8. 通过Student stu;语句定义一个用户类型变量时,是否能在内存中创建对象?通过Student stu;语句仅仅声明了一个类型为Student,名称为stu的引用变量。这个引用变量具有指向一个Student对象的潜在可能,但还没有指向一个Student对象。如果要想使stu指向一个全新的Student对象,在运行时用特定的jav

14、a关键字new在JVM存储空间中分配Student对象。即通过赋值语句将引用变量和对象关联起来,Student stu=new Student()。四、上机题对应编号详细要求1编写一个描述成绩的类;2编写一个描述学生的类;3编写一个描述圆形的类;4编写一个描述圆锥的类;一、 详细要求详细要求中,没有明确指明是 类变量或类方法; 一律定义为实例变量或实例方法;对应编号详细要求11. 编写名为: Score 类,用于描述成绩;2. 有三门成绩:语文,外语,数学;3. 要求三门成绩有相应的set和get方法;set用于赋值;get用于获取值; 例如有变量 int abc; 对应的set方法为: vo

15、id setAbc(int abc)this.abc=abc;对应的get方法为: int getAbc()return this.abc; 4. 完成后编译21. 编写名为: Student的类,用于描述学生;2. 学生有:姓名,年龄,班级(定义为类变量),成绩;3. 要求变量分别有相应的 set / get方法;4. 此类有两个构造方法;一个是无参数,一个是有参数(参数与变量对应),构造方法用于初始化相关变量;5. 在此类类中定义一个名为 speak的类方法;方法中有语句: System.out.println(“说中文.”);6. 完成后编译31. 编写一名为: Circle 的类, 用

16、于描述圆;2. 在类中定义一个实例变量用于存放半径, 并有相应的set, get方法;3. 在类中定义一个无参数的构造方法, 初始化半径值为: 5;4. 在类中有两个实例方法,一个用于计算并返回面积,名为: double area(); 一个用于计算并返回周长,名为: double girth();5. 再编写主类: Test3.java;6. 在主类中用Circle类创建一个对象; 调用相应的方法计算并输出周长和面积; 改变半径为 10后,再次计算并输出周长和面积;41. 编写名为: Taper 类,用于描述圆锥;2. 在类中定义有两个实例变量,一个是高 ,一个是底(即圆); 有对就的 set,get方法;3. 在类中定义一个无参数构造方法,初始化高为 7, 底(圆的半径为5) ;4. 在类中有一个实例方法名为 double bulk();用于计算并返回体积;5. 现编写主类: Test4.java;6. 在主类中用Taper类创建一个对象;调用相应的方法计算并输出体积;改变高或底,再次计算并输出体积;7.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁