面向对象技术Java 期末复习试卷(四)
2012-2013java面向对象期末测试题(带答案)
济南大学2009~2010 学年第二学期课程考试试卷课 程 java 面向对象程序设计 授课教师 考试时间 考试班级 学 号 姓 名 题号 一 二 三 四 五 总 分 审核人 得分 一、填空题(每空2分,共20分) 1.Java 源程序的扩展名是 .java ,经过编译后的程序的扩展名是 .class 。
2.Socket 通常也称为 套接字 ,用于描述 IP 地址 和 端口 。
3.线程的优先级在 1 至 10 之间,数值越大 优先级越高 4.构造方法是一种特殊的成员方法,构造方法名与 类名 相同 5.Java 语言只允许单继承,指每个类只能有一个 父类或子类 。
二、选择题(每题2分,共50分) 1.下列哪个概念是面向对象和面向过程程序设计所共有的 ( B ) A 、继承 B 、流程控制 C 、抽象 D 、封装 2.以下关于执行Java 小程序的论述错误的是: ( C ) A 、可以通过浏览器调用嵌入了Java 小程序的HTML 文档 B 、可以通过appletviewer .exe 调用嵌入了Java 小程序的HTML 文档 C 、可以通过java.exe 调用嵌入了Java 小程序的HTML 文档 D 、可以在Java 集成开发环境中调用嵌入了Java 小程序HTML 文档 3.符合对象和类关系的是: ( D ) A 、人和老虎 B 、书和汽车 C 、楼和土地 D 、松树和植物4.关于选择结构下列哪个说法正确? (B )A .if 语句和 else 语句必须成对出现B .if 语句可以没有else 语句对应 …………………………………………装…………………………订…………………………线…………………………………………C.一个if语句只能有一个else if语句与之对应D.else if结构中必须有default语句5.while循环和do…while循环的区别是:(D)A.没有区别,这两个结构任何情况下效果一样B.while循环比do…while循环执行效率高C.do…while循环执行次数可能为0D.while循环执行次数可能为06.关于for循环和while循环的说法哪个正确?(B)A.while循环先判断后执行,for循环先执行后判断。
Java面向对象程序设计期末复习试题(附解析)
JAVA面向对象程序设计复习试题+解析1)在JAVA编程中,关于Font下列()是正确的。
(选择两项)a)在我们的程序中可以使用Font类中定义的字体常量。
b)我们可以使用Tookit类中的函数来获取我们的机器中java所支持的字体的列表c)我们可以自己创建字体实例对象d)以上说明都正确【解析】参考答案:A BFont属于java.awt包中的一个类,专门用来设置程序中的字体实例对象。
创建Font类的对象时使用的方法:getFont(int face,int style,int size);例如:Font font = Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font. SIZE_MEDIUM);无论哪一个参数,都只能使用系统设置的数值,这些数值具体的大小在不同的手机上可能不同。
下面对于其中的三个参数的取值做详细的介绍:face参数指字体的外观;style参数指字体的样式;size参数指字体的大小。
这三个参数都是系统中定义好的一些常量。
获得系统的默认字体:Font font = Font.getDefaultFont();ToolKit类是 Abstract Window Toolkit 的所有实际实现的抽象父类。
Toolkit 用于把各种组件绑定到特定的本地工具箱实现上。
该类有个方法getFontList()用于返回该工具箱中可用字体名。
也就是可以获取机器中java所支持的字体的列表。
2)在Java语言中,在包Package1中包含包Package2,类Class_A直接隶属于包Package1,类Class_B直接隶属于包Package2。
在类Class_C要应用Class_A的方法A和Class_B 的方法B,你需要()语句。
(选择两项)a)import Package1.*;b)import Package1.Package2.*;c)import Package2.*d)import Package2.Package1.*;【解析】A BJava语言中的包机制就像Windows中的文件夹,用来归类类文件的位置。
面向对象期末考试题及答案
面向对象期末考试题及答案一、选择题(每题2分,共20分)1. 面向对象编程中的三大特性是?A. 封装、继承、多态B. 抽象、继承、封装C. 继承、封装、多态D. 封装、抽象、多态答案:A2. 在Java中,哪个关键字用于定义类?A. classB. structC. typeD. interface答案:A3. 以下哪个不是面向对象设计原则?A. 单一职责原则B. 开闭原则C. 里氏替换原则D. 模块化原则答案:D4. 在面向对象编程中,构造函数的作用是什么?A. 用于创建对象B. 用于销毁对象C. 用于实现继承D. 用于实现多态答案:A5. 以下哪个是Java中的访问修饰符?A. privateB. publicC. protectedD. 全部都是答案:D...(此处省略剩余选择题)二、简答题(每题10分,共30分)1. 简述面向对象编程的基本思想。
答案:面向对象编程是一种编程范式,它将现实世界中的实体抽象成对象,这些对象具有属性和行为。
面向对象编程的基本思想是将数据和处理数据的方法结合在一起,形成对象。
通过对象之间的交互来实现程序的功能。
2. 解释什么是多态性,并给出一个简单的例子。
答案:多态性是指允许不同类的对象对同一消息做出响应,但具体的行为会根据对象的实际类型而有所不同。
例如,在Java中,可以通过重载和重写来实现多态。
假设有一个动物类Animal,它有一个方法makeSound()。
然后有一个子类Dog,它重写了makeSound()方法。
当我们创建一个Dog对象并调用makeSound()时,会执行Dog类中的makeSound()方法,而不是Animal类中的。
3. 什么是封装?封装的好处是什么?答案:封装是将对象的数据(属性)和行为(方法)组合在一起,并隐藏对象的内部细节,只暴露出一个可以被外界访问的接口。
封装的好处包括:保护数据、减少错误、提高代码的重用性、增强模块化。
三、编程题(每题25分,共50分)1. 编写一个Java程序,实现一个简单的银行账户类Account,包含以下特性:- 私有属性:账户余额balance- 公共方法:存款deposit(double amount)、取款withdraw(double amount)、获取余额getBalance()答案:```javapublic class Account {private double balance;public Account() {this.balance = 0;}public void deposit(double amount) {if (amount > 0) {balance += amount;}}public void withdraw(double amount) {if (amount > 0 && balance >= amount) {balance -= amount;}}public double getBalance() {return balance;}}```2. 假设有一个名为Car的类,它有两个属性:品牌brand和颜色color。
2024java期末考试试题
2024java期末考试试题## 2024 Java 期末考试试题### 一、选择题(每题2分,共20分)1. 下列哪个是Java的基本数据类型?A. StringB. IntegerC. intD. boolean2. Java中,哪个关键字用于定义类?A. classB. interfaceC. packageD. import3. Java中的异常处理机制是通过哪两个关键字实现的?A. try-catchB. if-elseC. for-whileD. switch-case4. 在Java中,哪个类是所有类的父类?A. ObjectB. SystemC. ClassD. String5. 下列哪个是Java集合框架中的接口?A. ArrayListB. HashMapC. ListD. Set6. Java中的多线程是通过哪个类实现的?A. ThreadB. RunnableC. SynchronizedD. Process7. Java的垃圾回收机制是自动进行的,这属于哪种内存管理方式?A. 手动管理B. 自动管理C. 静态管理D. 动态管理8. 下列哪个不是Java的访问修饰符?A. publicB. privateC. protectedD. global9. Java中,哪个方法用于将字符串转换为整数?A. parseInt()B. toInt()C. convertToInt()D. toInteger()10. 在Java中,哪个关键字用于实现接口?A. implementsB. extendsC. overrideD. abstract### 二、简答题(每题10分,共30分)1. 简述Java的垃圾回收机制是如何工作的。
2. 解释Java中的多态性,并给出一个例子。
3. 描述Java中异常处理的重要性以及基本的异常处理流程。
### 三、编程题(每题25分,共50分)1. 编写一个Java程序,实现一个简单的计算器,能够进行加、减、乘、除四则运算。
《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案4
《面向对象程序设计JA V A语言程序设计》期末考试试题及部分答案1一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。
1.下列语句序列执行后,k 的值是(B )。
int m=3,n=6, k=0;while((m++)〈(—— n)) ++k;A) 0 B)1 C) 2 D)32.设i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是(B )。
A)i = i + 2 B)a[0] = 7;C) i++ - --j;D) a(0)= 66;3.Java语言的类间的继承关系是(B )。
A)多重的B)单重的C)线程的D) 不能继承4.设有定义int i = 6 ;,则执行以下语句后,i 的值为(C ).i += i - 1;A) 10 B) 121 C) 11 D) 1005.下列选项中,用于在定义子类时声明父类名的关键字是(C ).A)interface B) package C)extends D)class6.若已定义byte[]x= {11,22,33,-66} ;其中0≤k≤3,则对x数组元素错误的引用是( C )。
A)x[5-3] B)x[k] C)x[k+5] D)x[0]7.下列语句序列执行后,ch1 的值是( B ).char ch1=’A’,ch2='W’;if(ch1 + 2 < ch2 ) ++ch1;A)‘A’ B) ‘B’ C) ‘C' D)B8.下列语句序列执行后,i 的值是( D )。
int i=8,j=16;if( i—1 > j ) i--; else j--;A)15 B) 16 C) 7 D)89.下列语句序列执行后,k 的值是(C )。
int i=10, j=18,k=30;switch(j - i ){ case 8 : k++;case 9 :k+=2;case 10: k+=3;default :k/=j;}A) 31 B)32 C) 2 D) 3310.下面语句执行后,i 的值是(B )。
java期末考试试卷4
一、填空题1、在程序开发中,要想将一个包中的类导入到当前程序中,可以使用______关键字。
2、在Java语言中,所有的类都直接或间接继承自______类。
3、如果子类想使用父类中的成员,可以通过关键字______引用父类的成员。
4、若int a[3][2]={{123,345},{34,56},{34,56}},则a[2][1]= ______。
5、定义在类中的变量被称为______,定义在方法中的变量被称为______6、编译Java程序需要使用______命令。
7、若x = 2,则表达式( x + + )/3 的值是______。
8、面向对象的三大特征是______、______和______。
9、String类中用于返回字符串字符个数的方法是_____。
10、定义一个Java类时,如果前面加使用______关键字修饰,那么该类不可以被继承。
二、选择题1、关于方法重载的描述,以下选项中哪些是正确的?(多选)A、方法名必须一致B、返回值类型必须不同C、参数个数必须一致D、参数的个数或类型不一致2、已知类的继承关系如下:class Employee;class Manager extends Employeer;class Director extends Employee;则以下语句能通过编译的有哪些?A、Employee e=new Manager();B、Director d=new Manager(); 。
C、Director d=new Employee();D、Manager m=new Director();3、关于抽象类的说法哪些是正确的?(多选)A、抽象类中可以有非抽象方法。
B、如果父类是抽象类,则子类必须重写父类所有的抽象方法。
C、不能用抽象类去创建对象。
D、接口和抽象类是同一个概念。
4、在以下什么情况下,构造方法会被调用?A、类定义时B、创建对象时C、调用对象方法时D、使用对象的变量时5、先阅读下面的程序片段:String str1=new String("java");String str2=new String("java");StringBuffer str3=new StringBuffer("java");对于上述定义的变量,以下表达式的值为true的是哪个?A、str1==str2;B、str1.equals(str2);C、str1==str3;D、以上都不对6、先阅读下面的程序片段:String str = "abccdefcdch";String[] arr = str.split("c");System.out.println(arr.length);程序执行后,打印的结果是几?A、2个B、3个C、4个D、5个7、下面哪一个是正确的类的声明?A、public void HH{…}B、public class Move(){…}C、public class void number{}D、public class Car{…}/8、使用this调用类的构造方法,下面的说法正确的是?(多选)A、使用this调用构造方法的格式为this([参数1,参数2…])B、只能在构造方法中使用this调用其它的构造方法C、使用this调用其它构造方法的语句必须放在第一行D、不能在一个类的两个构造方法中使用this互相调用9、在Java中,要想让一个类继承另一个类,可以使用以下哪个关键字?A、inheritsB、implementsC、extendsD、modifies10、类中的一个成员方法被下面哪个修饰符修饰,该方法只能在本类被访问?A、publicB、protectedC、privateD、defaul11、下面对于构造方法的描述,正确有哪些?(多选)A、方法名必须和类名相同B、方法名的前面没有返回值类型的声明C、在方法中不能使用return语句返回一个值D、当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在12、关于super关键字以下说法哪些是正确的?(多选)A、super关键字可以调用父类的构造方法B、super关键字可以调用父类的普通方法C、super与this不能同时存在于同一个构造方法中D、super与this可以同时存在于同一个构造方法中13、请先阅读下面的代码public class Test {public Test(){System.out.println("构造方法一被调用了");}public Test(int x){this();System.out.println("构造方法二被调用了");}public Test(boolean b){this(1);System.out.println("构造方法三被调用了");}public static void main(String[] args) {Test test = new Test(true);}}上面程序的运行结果为下列哪一项?A、构造方法一被调用了B、构造方法二被调用了C、构造方法三被调用了D、以上三个选项之和14、String s = "abcdedcba";则s.substring(2,3)返回的字符串是以下选项中的哪个?A、cdB、deC、dD、e15、以下关于变量的说法错误的是?A、变量名必须是一个有效的标识符B、变量在定义时可以没有初始值C、变量一旦被定义,在程序中的任何位置都可以被访问D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明三、程序分析题阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。
java面向对象程序设计期末考试题及答案
java面向对象程序设计期末考试题及答案一、单项选择题(每题2分,共20分)1. 在Java中,哪个关键字用于声明一个类?A. classB. structC. interfaceD. enum答案:A2. 下列哪个是Java中的访问修饰符?A. publicB. privateC. protectedD. All of the above答案:D3. 在Java中,哪个关键字用于创建对象?A. newB. createC. makeD. instantiate答案:A4. Java中的继承是通过哪个关键字实现的?A. extendsB. inheritC. deriveD. superclass答案:A5. 在Java中,哪个关键字用于实现接口?A. implementsB. extendsC. interfaceD. abstract答案:A6. 下列哪个不是Java中的方法重载的条件?A. 方法名相同B. 参数列表不同C. 返回值类型不同D. 访问修饰符不同答案:C7. 在Java中,哪个关键字用于声明一个抽象方法?A. abstractB. virtualC. overrideD. final答案:A8. Java中的多态性可以通过哪种方式实现?A. 方法重载B. 方法覆盖C. 接口实现D. 继承答案:B9. 在Java中,哪个关键字用于声明一个内部类?A. innerB. nestedC. staticD. inner class答案:B10. Java中的垃圾回收机制是自动的吗?A. YesB. NoC. SometimesD. Depends on the JVM答案:A二、填空题(每题2分,共20分)1. Java中,一个类可以继承另一个类的______方法和属性。
答案:非私有2. Java中的______关键字用于声明一个类是不可被继承的。
答案:final3. 在Java中,______关键字用于声明一个类是抽象的。
JAVA面向对象程序设计(期末考试试题及答案)
程序设计(期末考试试题及答案)JAVA面向对象面向对象程序设计一、单选择题1、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。
A.javaB..classC.htmlD..exe2、不允许作为类及类成员的访问控制符的是(C)。
A.publicB.privateC.staticD.Protected3、设x=1,y=2,z=3,则表达式y+=z--/++x的值是(A)。
A.3B.3.5C.4D.54、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。
A.static void method()B.public void method()C.final void method()D.abstract void method()5、下列属于容器的组件有:(B)A.JButton B.JPaneC.Canvas D.JTextArea6、v oid的含义:(C)A.方法体为空B.定义的方法没有形参C.定义的方法没有返回值 D.方法的返回值不能参加算术运算7、关于Java中异常的叙述正确的是:(D)A.异常是程序编写过程中代码的语法错误B.异常是程序编写过程中代码的逻辑错误C.异常出现后程序的运行马上中止D.异常是可以捕获和处理的8、下面哪个不是java语言中的关键字?(B)A.longB.sizeofC.instanceofD.Const9、在复选框中移动鼠标,然后单击一选项,要捕获所选项必需实现哪个接口?(D)A.ActionListenerB.MouseListenerC.MouseMotionListernD.ItemListener10、以下有关类的继承的叙述中,正确的是:(D)A子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B.子类只能继承父类的方法,不能继承父类的属性C.子类只能继承父类的非私有属性,不能继承父类的方法D.子类不能继承父类的私有属性二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。
JAVA语言与面向对象程序设计期末复习题
JAVA语言与面向对象程序设计期末复习题20n年上(一)单项选择题(二)1.对象是构成现实世界的一个独立单位,它具有自己的静态特征和()特征。
A.颜色B.动态C.状态D.重量2.使用JDK编译jaa程序时使用的命令是()。
A. javaB. javacC. appletviewerD. javadoc3.在Java程序中包含主方法的类被称为主类,主方法的访问控制修饰符()。
A. privateB. protectedC. publicD. static4.在类的定义中,若需要把一个标识符定义为常量,则使用的修饰符为()。
A. constB. finalC. staticD. class5.在程序中声明包的语句关键字为()。
A. volatileB. packC. importD. package6.在一个方法的方法头(声明)中向调用它的上一层方法抛出异常的子句关键字为()。
A. catchB. throwC. throwsD. finally7.在类定义首部的语法格式中,()不能作为其中的修饰符。
A. publicB. protectdC. extendsD. abstract8.下列哪个类不是异常类的父类?()。
A. ErrorB. ThrowableC. ExceptionD. Object9.下面的关键字()与异常处理无关。
A. throwB. throwsC. importD. finally10.在读字节文件Employee.dat时,使用该文件作为参数的类是()。
A. BufferedReaderB. DataInputStreamC. DataOutputStreamD. FileInputStream(二)填空题1. Java 类库也称为 Java API,它是 Application Programming Interfac的缩写,中文含义为。
2. Java语言中用于修饰类的成员具有保护或私有访问属性的关键字分别为和。
《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案
一、单选题1.在下列概念中,Java语言只保留了DA.运算符重载B.结构和联合C.指针D.方法重载2.下列类定义中,不正确的是BA.class x { .... } B.static class x implements y1,y2 { .... }C.public class x extends Applet { .... } D.class x extends y { .... }3.下列语句序列执行后,k 的值是Bint m=3, n=6, k=0;while( (m++) < (- - n) ) ++k;i++先把i的初值赋给表达式(i++),作为表达式(i++)的值,然后i自增1作为i的值。
如i=1,则表达式(i++)的值等于1,而i的值变为2。
++ii先自增1,再把自增后的值赋给表达式(++i)。
如i=1,则表达式(++i)的值等于2,i的值也为2,A.0 B.1 C.2 D.34.设i、j为int型变量名,a为int型数组名,以下选项中,正确的赋值语句是AA.a[0] = 7; B.i = i + 2 C.i++ - --j; D.a(0) = 66;5.Java语言的类间的继承关系是BA.多重的B.单重的C.线程的D.不能继承6.下列语句序列执行后,k 的值是Cint i=10, j=18, k=30;switch( j - i ) {case 8 : k++;case 9 : k+=2;case 10: k+=3;default : k/=j;}A.31 B.3 C.2 D.337.设有定义float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是CA.x > y || x > z B.z > ( y + x ) C.x != y D.x < y & ! ( x < z )8.下列修饰符中,定义类头时能使用的修饰符是CA.private B.static C.abstract D.protected9.设i、j、k为类x中定义的int型变量名,下列类x的构造函数中不正确的是BA.x( int m){ ... } B.void x( int m){ ... }C.x( int m, int n){ ... } D.x( int h,int m,int n){ ... }10.下列对封装性的描述中,错误的是 DA.封装体包含了属性和行为B.封装使得抽象的数据类型提高了可重用性C.被封装的某些信息在封装体外是不可见的D.封装体中的属性和行为的访问权限是相同的11.下列关于包的描述中,错误的是BA.包是若干个类的集合B.包是一种特殊的类型C.包是使用package语句创建的D.包有有名包和无名包两种12.下列关于Applet程序的描述中,错误的是 CA.Applet程序的主类必须是Applet类得子类B.Applet不是完整的独立程序C.Applet程序的主类中应有一个main()方法D.Applet的字节码文件必须嵌套在一个HTML文件中13.下列界面元素中,不是容器的是CA.Dialog B.Frame C.List D.Panel14.下列关于异常处理的描述中,错误的是DA.程序运行时异常由Java虚拟机自动进行处理B.使用try-catch-finally语句捕获异常C.使用throw语句抛出异常D.捕获到的异常只能在当前方法中处理,不能在其他方法中处理15.以下方法不属于迭代器(Iterator)接口所定义的方法的是DA.hasNext()B.next()C.remove()D.nextElement()16.主线程属于(C )A.守护线程B.Thread线程C.用户线程D.Runnable线程二、填空题1.三目运算符的3个操作数中,第一个操作数的类型必须是逻辑型的。
吉林大学22春“计算机科学与技术”《面向对象程序设计》期末考试高频考点版(带答案)试卷号4
吉林大学22春“计算机科学与技术”《面向对象程序设计》期末考试高频考点版(带答案)一.综合考核(共50题)1.类Teacher和Student是类Person的子类; Person p; Teacher t; Student s; //p, t and s are all non-null. if(t instanceof Person) { s = (Student)t; }最后一句语句的结果是()。
A.将构造一个Student对象B.表达式是合法的C.表达式是错误的D.编译时正确,但运行时错误参考答案:C2.由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。
()A.正确B.错误参考答案:B3.下列语句序列执行后,ch1的值是()。
char ch1='A',ch2='W'; if(ch1 + 2 ch2 ) ++ch1;A.‘A'B.B'C.‘C'D.B参考答案:B4.下列叙述中,错误的是()。
A.父类不能替代子类B.子类能够替代父类C.子类继承父类D.父类包含子类5.下列代码中,将引起一个编译错误的行是()。
(1)1public class Test {(2) int m,n; (3)public Test(){}(4)public Test(int a){m=a;}(5)public static void main(String args[]{(6)Test t1,t2; (7)int j,k;(8)j=0; k=0; (9)t1=new Test; (10)t2=new Test(j,k); (11)}(12)}A.第3行B.第5行C.第6行D.第10行参考答案:D6.数组与向量的区别是()。
A.数组的长度固定B.数组元素的数据类型相同,可以是普通数据类型C.向量长度可变D.类型可不同,只能是对象的引用参考答案:ABCD7.以下有关类的继承的叙述中,正确的是()A.子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B.子类只能继承父类的方法,不能继承父类的属性C.子类只能继承父类的非私有属性,不能继承父类的方法D.子类不能继承父类的私有属性参考答案:D8.下面的表达式哪个是正确的?()A.String s=“ 你好”; int i=3; s+=iB.String s=“ 你好”; int i=3; if(i==s){s+=i}C.String s=“ 你好”; int i=3; s=i+sD.String s=“ 你好”; int i=3; s=i+参考答案:A下列关于修饰符混用的说法,错误的是()A.abstract不能与final并列修饰同一个类B.abstract类中不可以有private的成员C.static方法中能处理非static的属性D.abstract方法必须在abstract类中参考答案:C10.下列运算符中,优先级最高的是()。
Java程序设计期末考试模拟试题四及答案
《Java程序设计》模拟试题3( 90 分钟)一、选择题(3分/题,共10个,共30分)1. 下列关于面向对象程序设计方式的描述,错误的是()(A) 万物皆为对象(B)继承的目的是为了降低类和类之间的耦合(C) 每个对象都有类型(D) 子类可以接受和父类收到的消息答案:B。
解析:继承是为了增加程序设计中的代码复用,加强了类和类之间的耦合。
其他三项均正确。
A正确;C也正确,一个对象起码是Object类型;D是多态的表现之一。
2. 以下符合继承关系的是()(A) 铅笔和钢笔(B) 中文和英文(C) 电脑和显示器(D) 动物和老虎答案:D。
解析:A中铅笔盒钢笔并没有直接关系;B中和A同理;C中电脑和显示器是组合关系;D 中动物和老虎是继承关系,动物的所有行为都可以被老虎实现。
3. 以下对封装的描述正确的是()(A) 只能对一个类中的方法进行封装,不能对属性性进行封装(B) 如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用(C) 封装的意义不大,因此在编码时尽量不要使用(D) 封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性答案:D。
解析:A错,封装可以对属性;B错,非private的方法才可以;C错。
4. Java的基本类型中,char类型在Java虚拟机中占据()个字节。
(A) 1 (B) 2 (C) 4 (D) 8答案:B。
解析:和gcc等其他编译器不一样,Java规范规定char采用Unicode编码,所以一个char 字符占两个字节。
5. 下列属于Java的控制执行流程的语句是()(A) if-else (B) break label (C) for (D) goto答案:D。
解析:Java保留了goto的关键字,但不提供goto的功能。
goto语句相应功能的可以用breaklabel语句实现。
其他选项正确。
6. 关于Java的访问控制权限,下列说法正确的是()(A) 子类可以访问父类的private方法(B) 子类只能访问父类的public方法(C) 子类可以访问父类的protected方法(D) 以上选项都错误答案:C。
JAVA面向对象程序设计(期末考试试题及答案)
JAVA面向对象程序设计(期末考试试题及答案)一、选择题(每题5分,共30分)1. 下列哪个不是Java基本数据类型?A. intB. charC. StringD. boolean答案:C2. 下列哪个操作符用于取模?A. %B. /C.D. &答案:A3. 下列哪个关键字用于定义接口?A. classB. interfaceC. extendsD. implements答案:B4. Java中,下列哪个方法可以实现字符串的截取?A. substring(int start, int end)B. substring(int start, int length)C. substring(int index)D. substring(int index, int length)答案:A5. 下列哪个方法用于判断字符串是否为空?A. isEmpty()B. isBlank()C. isEmptyD. isNull()答案:B6. 下列哪个方法用于获取字符串长度?A. length()B. lengthC. size()D. getSize()答案:A二、填空题(每题5分,共30分)1. 在Java中,所有的类都是_______类的子类。
答案:Object2. Java中定义接口时,需要使用_______关键字。
答案:interface3. 在Java中,定义抽象类时需要使用_______关键字。
答案:abstract4. Java中,字符串比较可以使用_______方法。
答案:equals()5. 在Java中,若要实现字符串的翻转,可以使用_______类。
答案:StringBuilder6. 下列哪个方法用于判断字符串是否以指定的字符串开头?答案:startsWith(String prefix)三、编程题(共40分)1. 编写一个Java程序,实现一个简单的计算器功能,包括加、减、乘、除四种运算。
软件设计师-面向对象技术(四)_真题-无答案
软件设计师-面向对象技术(四)(总分152,考试时间90分钟)一、综合知识试题在UML类图中,类与类之间存在依赖(Dependency)、关联(Association)、聚合(Aggregation)、组合(Composition)和继承(Inheritance)五种关系,其中, (14) 关系表明类之间的相互联系最弱, (15) 关系表明类之间的相互联系最强,聚合(Aggregation)的标准UML图形表示是 (16) 。
1. A.依赖B.聚合C.组合D.继承2. A.依赖B.聚合C.组合D.继承(3) 是指把数据以及操作数据的相关方法组合在同一个单元中,使我们可以把类作为软件中的基本复用单元,提高其内聚度,降低其耦合度。
面向对象中的 (4) 机制是对现实世界中遗传现象的模拟,通过该机制,基类的属性和方法被遗传给派生类。
3. A.封装B.多态C.继承D.变异4. A.封装B.多态C.继承D.变异5. ______是指在运行时把过程调用和响应调用所需要执行的代码加以结合。
A.绑定 B.静态绑定 C.动态绑定 D.继承下列UML类图表示的是 (53) 设计模式。
该设计模式中 (54) 。
6. A.备忘录(Memento) B.策略(Strategy)C.状态(State) D.观察者(Observer)7.A.一个Subj ect对象可对应多个Observer对象B.Subject只能有一个ConcreteSubject子类C.Observer只能有一个ConcreteObserver予类D.一个Subject对象必须至少对应一个Observer对象开一闭原则(Open-Closed Principle,OCP)是面向对象的可复用设计的基石。
开一闭原则是指一个软件实体应当对 (23) 开放,对 (24) 关闭;里氏代换原则(Liskov Substitution Principle,LSP)是指任何 (25) 可以出现的地方, (26) 一定可以出现。
JAVA面向对象程序设计(期末考试试题及答案)
程序设计(期末考试试题及答案)JAVA面向对象面向对象程序设计一、单选择题1、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。
A.javaB..classC.htmlD..exe2、不允许作为类及类成员的访问控制符的是(C)。
A.publicB.privateC.staticD.Protected3、设x=1,y=2,z=3,则表达式y+=z--/++x的值是(A)。
A.3B.3.5C.4D.54、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。
A.static void method()B.public void method()C.final void method()D.abstract void method()5、下列属于容器的组件有:(B)A.JButton B.JPaneC.Canvas D.JTextArea6、v oid的含义:(C)A.方法体为空B.定义的方法没有形参C.定义的方法没有返回值 D.方法的返回值不能参加算术运算7、关于Java中异常的叙述正确的是:(D)A.异常是程序编写过程中代码的语法错误B.异常是程序编写过程中代码的逻辑错误C.异常出现后程序的运行马上中止D.异常是可以捕获和处理的8、下面哪个不是java语言中的关键字?(B)A.longB.sizeofC.instanceofD.Const9、在复选框中移动鼠标,然后单击一选项,要捕获所选项必需实现哪个接口?(D)A.ActionListenerB.MouseListenerC.MouseMotionListernD.ItemListener10、以下有关类的继承的叙述中,正确的是:(D)A子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B.子类只能继承父类的方法,不能继承父类的属性C.子类只能继承父类的非私有属性,不能继承父类的方法D.子类不能继承父类的私有属性二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。
Java面向对象期末考试题
Java期末考试题选择题(每题2分,共20分)1.在Java中,下列哪个选项是合法的变量名?(2分)A. 3xB. _nameC. $valueD. -age2.Java中boolean类型的取值是什么?(2分)A. 0 和1B. true 和falseC. yes 和noD. on 和off3.Java中,数组的第一个元素的下标是多少?(2分)A. 0B. 1C. -1D. 取决于数组的长度4.下列哪个关键字用于定义不可变的变量?(2分)A. staticB. constC. finalD. immutable5.Java中,继承是使用哪个关键字实现的?(2分)A. implementsB. extendsC. inheritsD. derives6.抽象类的特点是什么?(2分)A. 可以实例化B. 必须包含至少一个抽象方法C. 不能包含具体方法D. 可以包含具体方法7.使用哪个方法可以获取字符串的长度?(2分)A. length()B. size()C. lengthD. getSize()8.在Java中,++i比i++的效率高。
(2分)A. 正确B. 错误9.在Java中,所有类都直接或间接继承自Object类。
(2分)A. 正确B. 错误10.StringBuffer类是线程安全的。
(2分)A. 正确B. 错误填空题(每题2分,共20分)1.在Java中,使用关键字______声明类变量。
(2分)2.使用______关键字可以跳出当前循环。
(2分)3.______方法用于在字符串末尾添加新的字符串,而不改变原字符串。
(2分)4.Java中,如果子类的方法与父类的方法相同,这种机制称为______。
(2分)5.在Java中,一个类可以实现多个______。
(2分)6.使用______关键字可以声明一个方法可能抛出的异常。
(2分)7.______是Java中用于生成文档注释的注释方式。
(2分)8.在Java中,使用______和______关键字可以定义一个二维数组。
面向对象技术Java期末复习试卷
期末复习试卷(四)一、单项选择题1.有关静态变量旳概念, 下列哪一种对旳A.一旦一种静态变量被分派, 它旳值就不容许变化.B.一种静态变量在措施中被创立, 它在被调用前保留上一次调用旳成果.C.在任意多种类旳实例中, 它们共享类定义旳静态变量D.在任意多种类旳实例中,它们各有自己旳静态变量.对旳答案: B2.选出下面不能作为void Med(int x)措施重载旳申明。
A.void Med (double y)B.int Med (int y)C.double Med (int x, int y)D.public float Med (float x)对旳答案: B3.下列哪一种不对旳A.一种抽象类必须定义抽象措施.B.定义了抽象措施旳类必然是抽象类.C.一种接口中, 定义旳每一种措施必须是抽象措施.D.一种接口中,定义旳每一种组员变量必须是常量.对旳答案: A4.Circle是GeometricObject旳子类。
假如有语句: Circle circle = newCircle(1);GeometricObject object = new GeometricObject();那么下面哪个布尔体现式旳值为false?A.(circle instanceof GeometricObject)B.(object instanceof GeometricObject)C.(circle instanceof Circle)D.(object instanceof Circle)对旳答案: D5.下列有关变量旳论述哪个是错旳?A.实例变量是类旳组员变量B.实例变量用关键字static申明C.在措施中定义旳局部变量在该措施被执行时创立D.局部变量在使用前必须被初始化对旳答案: B二、程序题1.编写一种应用程序, 模拟机动车旳加速和减速功能。
机动车类Vehicle旳UML图如下,其中speedUp()措施实现加速功能, 速度上限为240 km/h;speedDown()实现降速功能,下限为0 km/h。
JAVA期末复习题及答案——第四章
JAVA期末复习题及答案——第四章一.填空题1.类是属性和方法的集合。
2.在面向对象方法中,类描述的是具有相似属性与操作的一组对象。
3.在面向对象的方法中,类的实例被称为_对象____。
4.面向对象的程序设计方法中涉及的对象是程序中用来描述客观事物的一个实体,它由__属性__和可执行的一组操作共同组成。
5.protected关键字修饰的属性或方法表示可被_类自身,同一个包中的其他类,不同包中的子类_访问。
6.抽象的类不能__生成对象__。
7.构造方法是一种特殊的方法,用它来定义对象的_初始化状态__。
8.___最终___类是不能被继承的类。
9.面向对象的3个最主要的特点是继承性、多态性和封装性。
10.在创建类的对象时都会调用类的构造函数来初始化类中的属性。
11.消息传递的三要素是接收消息的对象、接收消息的方法和方法所需要的参数。
12.访问控制符用来控制类和类的成员的访问权限。
二.选择题1.下列关于Java对import语句规定的叙述中,错误的是:(C )A、在Java程序中import语句可以有多个B、在Java中import语句可以没有C、在Java中import语句必须有一个D、在Java程序中import语句必须引入在所有类定义之前2.下列关于构造函数的叙述中,错误的是:(C)A、Java语言规定构造函数名与类名必须相同B、Java语言规定构造函数没有返回值,但不用void声明C、Java语言规定构造函数不可以重载D、Java语言规定构造函数只能通过new自动调用3.若数组a定义为int[][]a=new int[3][4],则a是:BA、一维数组B、二维数组C、三维数组D、四维数组4.已知:int []a=new int[100]; 在下列给出的数组元素中,非法的是:D A、a[0] B、a[1] C、a[99] D、a[100]5.在Java中,用package语句说明一个包时,该包的层次结构必须是( B)。
java面向对象期末试题及答案
java面向对象期末试题及答案一、选择题(共10题,每题2分,共20分)1. 下列选项中,不属于Java的基本数据类型的是:A) intB) doubleC) booleanD) String答案:D2. 下列选项中,哪个关键字表示一个类不能被继承:A) finalB) staticC) privateD) abstract答案:A3. 在Java中,抽象类的特点是:A) 可以直接实例化B) 可以包含具体方法C) 可以被继承D) 可以实现多重继承答案:C4. 下列选项中,哪个关键字表示一个方法可以被子类重写:A) staticB) finalC) privateD) abstract答案:D5. 在Java中,接口的特点是:A) 可以包含成员变量B) 可以被实例化C) 可以包含具体方法D) 可以被类直接继承答案:B6. 下列选项中,哪个关键字表示一个方法或类只能被同一个包内的其他类访问:A) protectedB) publicC) privateD) default答案:D7. 在Java中,多态的实现方式是通过:A) 继承B) 接口C) 抽象类D) 重载答案:A8. 下列选项中,哪个关键字表示一个方法可以在同一个类中多次定义,但参数列表必须不同:A) staticB) finalC) privateD) overloading答案:D9. 在Java中,使用关键字“this”表示的是:A) 调用当前对象的方法B) 调用父类的方法C) 调用子类的方法D) 调用类的静态方法答案:A10. 下列选项中,哪个关键字表示一个方法不能被子类重写:A) finalB) abstractC) privateD) protected答案:A二、填空题(共5题,每题4分,共20分)1. 在Java中,创建对象的关键字是________。
答案:new2. 在Java中,使用关键字________定义了一个类的成员变量只能被本类的方法访问。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
期末复习试卷(四)
一、单项选择题
1、关于静态变量的概念,下列哪一个正确
A. 一旦一个静态变量被分配,它的值就不允许改变.
B. 一个静态变量在方法中被创建,它在被调用前保留上一次调用的结果.
C. 在任意多个类的实例中,它们共享类定义的静态变量
D. 在任意多个类的实例中,它们各有自己的静态变量.
正确答案:B
2、选出下面不能作为void Med(int x)方法重载的声明。
A. void Med (double y)
B. int Med (int y)
C. double Med (int x, int y)
D. public float Med (float x)
正确答案:B
3、下列哪一个不正确
A. 一个抽象类必须定义抽象方法.
B. 定义了抽象方法的类必定是抽象类.
C. 一个接口中,定义的每一个方法必须是抽象方法.
D. 一个接口中,定义的每一个成员变量必须是常量.
正确答案:A
4、Circle是GeometricObject的子类。
如果有语句:Circle circle = new
Circle(1);GeometricObject object = new GeometricObject();那么下面哪个布尔表达式的值为false?
A. (circle instanceof GeometricObject)
B. (object instanceof GeometricObject)
C. (circle instanceof Circle)
D. (object instanceof Circle)
正确答案:D
5、下列关于变量的叙述哪个是错的?
A. 实例变量是类的成员变量
B. 实例变量用关键字static声明
C. 在方法中定义的局部变量在该方法被执行时创建
D. 局部变量在使用前必须被初始化
正确答案:B
二、程序题
1、编写一个应用程序,模拟机动车的加速和减速功能。
机动车类Vehicle的UML图如
下,其中speedUp()方法实现加速功能,速度上限为240 km/h;speedDown()实现降速功能,下限为0 km/h。
解题要求:编写测试程序,创建Vehicle对象,设置初始速度为100 km/h,调用speedDown()方法减速5 km,再调用speedUp()方法提速10 km,输出车辆的最终速度。
2、创建一个BMI计算器。
编写一个程序,用户输入个人的身高(m)、体重(kg),计算他的BMI,并显示体重状况。
使用两个文本域分别接受用户输入的身高和体重。
当用户点击“计算BMI”按钮,在另外两个文本域中分别显示BMI的数值以及体重状况。
计算BMI的公式如下:
BMI = 体重公斤数/(身高米数×身高米数)。
根据BMI,可以判断个人的体重状况如下:
GUI效果可参考如下。
3、模拟一个用户登录GUI,在用户输入用户名和密码后,点击登录按钮,在控制台下显示相应信息。
效果
如图1所示。
图1 基本的登录界面
如果用户输入正确的用户名和密码信息,并按下“登录”按钮,则显示效果如图2所示。
图2 输入正确的登录信息(GUI)及其系统提示信息(控制台)
如果用户输入错误的用户名或密码信息,并按下“登录”按钮,则显示效果如图3所示。
图2 输入错误的登录信息(GUI)及其系统提示信息(控制台)编写程序实现图1的GUI,并使用Java事件处理模型,处理“登录”按钮,
显示图2或图3所示的控制台信息。
注:假设有效用户名为“大鲨鱼”、有效密码为
“123456”。
密码输入框可以使用组件类PasswordField,基本用法参考一般文本框。
4、设计一个名为Account的银行账户类,包括:
(1) 一个名为id的int类型私有账户数据域(默认值为0)。
(2) 一个名为balance的double类型私有账户数据域(默认值为0)。
(3) 一个能创建默认账户的无参构造方法。
(4) 一个能创建带特定id和初始余额的账户的构造方法。
(5) id、balance的访问器和修改器。
(6) 一个名为withDraw的方法从账户提取特定数额。
(7) 一个名为deposit的方法向账户存储特定数额。
实现Account类,在测试方法中,创建一个账户ID为1122、余额为20000美元的Account对象。
使用withdraw方法取款2500美元,使用deposit方法存款3000美元,然后打印账户和余额。