Java基础期中考试练习
- 格式:docx
- 大小:31.80 KB
- 文档页数:5
《Java程序设计》期中测试题一、选择题(每题2分,共20分)1. Java 源程序编译后产生的字节码文件的扩展名为( A )。
A. javaB. classC. htmlD. exe2. 以下标识符中哪项是不合法的( D )。
A. BigOlLong$223B. utfintC. $12sD. 3d3. Java中main()函数的返回值是什么( A )。
A. StringB. intC. charD. void4. 设数组定义:int[] a=new int[10];则数组的第一个元素的正确引用方法为( B )。
A.a[1] B.a[0] C.a [] D.a5. Java中导入类包的关键字是( B )标记符。
A. class B. import C.extends D.implements6. 在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。
这种面向对象程序的特性称为( C )。
A.隐藏 B.覆盖 C.重载 D.Java不支持此特性7. 创建了java源文件后,就要使用java编译器( A )对其进行编译。
A. javacB. javaC. javawD. javam8. 设x为float型变量,y为double型变量,a为int型变量,则表达式x+y*a/x 的值为( C )类型。
A. intB.longC. doubleD.char9. 如果result是布尔变量,下面哪个选项是正确的:( D )A.result = true;B.if(result=0){//do something… }C.if(result!=0){//do something… }D.result = 1;10. 关于变量和它们范围的说法,不正确的是:( C )A.实例变量是类的成员变量B.实例变量要用关键字static来声明C.在一个方法执行前,定义在该方法的局部变量就被创建D.局部变量必须在它们使用前初始化二、程序填空题(每空2分,共20分)1. 下面是一个类的定义,请完成程序。
Java语言期中考试试题及答案-1一、选择题1. 下列哪个关键字不是 Java 中的保留字?- a) byte- b) int- c) goto- d) long答案:c) goto2. 在 Java 中,整数类型的默认值是多少?- a) 0- b) 1- c) -1- d) 无默认值答案:a) 03. 下面哪个选项用来创建对象?- a) new- b) create- c) make- d) object答案:a) new4. Java 中的关键字 `final` 的作用是什么?- a) 用于声明常量- b) 用于声明最终类- c) 用于声明最终方法- d) 以上都是答案:d) 以上都是5. 在 Java 中,以下哪个选项可以用来提高执行效率?- a) 尽量使用基本数据类型- b) 尽量使用引用数据类型- c) 以上都是- d) 无法通过数据类型选择提高执行效率答案:a) 尽量使用基本数据类型二、填空题1. Java 程序的入口是 `____` 方法。
答案:main2. 下面的代码会输出什么结果?int a = 5;int b = 2;System.out.println(a % b);答案:13. 下面的代码存在一个编译错误,请找出错误并修改。
int a = 10;int b = 20;int sum = a + bSystem.out.println(sum);答案:在 `int sum = a + b` 行末缺少分号,应修改为 `int sum = a + b;`三、简答题1. 简要解释 Java 中的封装(Encapsulation)是什么?答案:封装是一种面向对象编程的原则,它将数据和操作数据的方法组合在一起,通过使用访问修饰符对数据进行保护,使得数据只能通过预定的方法进行操作,并且只暴露必要的接口,从而隐藏具体的实现细节。
2. 简要解释 Java 中的继承(Inheritance)是什么?答案:继承是一种面向对象编程的机制,它允许一个类(子类)继承另一个类(父类)的属性和方法。
Java语言程序设计基础综合测试题一、选择题。
1.编译Java Applet 源程序文件产生的字节码文件的扩展名为( )。
A、javaB、classC、htmlD、exe答:B2.main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的()?A、public static void main()B、public static void main(String args[] )C、public static int main(String [] arg )D、public void main(String arg[] )答:B3.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A、static void method( )B、public void method( )C、final void method( )D、abstract void method( )答:A4.下列哪个是合法的Java标识符?()A、Tree&GlassesB、FirstJavaAppletC、_$theLastOneD、273.5答:B 、 C5.Java Application源程序的主类是指包含有()方法的类。
A、main方法B、toString方法C、init方法D、actionPerfromed方法答:A6.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用()个比特位。
A、8B、16C、32D、64答:B7.设 a = 8,则表达式 a >>> 2 的值是( )。
A、1B、2C、3D、4答:B7.若a的值为3时,下列程序段被执行后,c的值是多少?()c = 1;if ( a>0 ) if ( a>3 ) c = 2; else c = 3; else c = 4;A、1B、2C、3D、4答:C8.对于构造函数,下列叙述正确的是()。
考试类型:一纸闭卷( );完全闭卷( √ );开卷( )第2学期期中测试试卷学 院 班 级 姓 名 学 号一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1. 关于对象成员占用内存说法正确的是( ) A .同一个类的对象共用一段内存B .同一个类的对象使用不同一段内存,但静态成员共享相同的内存空间C .对象的方法不占用内存D .以上都不对 2.关于方法的说法正确的是( )A .方法中的形参可以和方法所属类的属性相同B .方法必须有形参C .同类不同的方法中不能有同名的自变量,否则会产生不可预测的结果D .没有返回值的方法可以用void 来表示,也可以不加 3. 类Test1定义如下:1. public class Test1{2. public float aMethod (float a, float b ){ }3.4. }将以下方法插入行3不合法的是( )A .public float aMethod (float a ,float b ,float c ){ }B. public float aMethod(float c,float d){ }C. public int aMethod(int a,int b){ }D. private float aMethod(int a,int b,int c){ }4.构造函数被调用于()A.创建对象时B.类定义时C.使用对象的方法时D.使用对象的属性时5.下面说法正确是()A.每个Java类都至少有一个构造方法,如果没有则机器自动生成一个默认的构造方法。
B. 如果类里定义了一个或多个构造方法,Java也提供默认的构造方法。
C. 每个Java类中用户必须定义至少一个构造方法D. 以上都不对6.关于继承的说法正确是的()A.子类将继承父类所有的属性和方法B.子类继承父类的非私有属性和方法C.子类只能继承父类public方法和属性D.子类只能继承父类的方法,而不能继承属性7.下列说法正确的是()A. 子类只能覆盖父类的方法,而不能重载B. 子类只能重载父类的方法,而不能覆盖C. 子类不能定义和父类同名同形参的方法,否则系统将不知道使用哪个方法D. 重载就是一个类中有多个同名但有不同形参或方法体的方法8.this和super()A. 都可以用在main( )方法中B.指向一个内存地址C.不能用在main()方法中 D.意义相同9.下列关于修饰符混用说法中,错误的是()。
《面向对象与UML》习题一、选择1.一个设计得好的OO系统具有 (B )A、低内聚,低耦合的特征B、高内聚,低耦合的特征C、高内聚,高耦合的特征D、低内聚,高耦合的特征2.面向对象技术中,对象是类的实例。
对象有三种成分:(A)、属性和方法(或操作)。
A.标识B.规则C.封装D.消息3. 参考下图,下面哪些叙述是正确的?( BC )A、A和B是Employee的子类。
B、如果一个方法的参数类型是Employee,则A的实例或B的实例可以作为参数传递给该方法。
C、A和B必须实现getSalary()方法。
D、系统中不能创建类型为Employee的实例。
图24.如下图所示,下面哪些叙述是正确的?CA、 ArbitraryIcon是抽象类, ArbitraryIcon不从类Icon继承display方法。
B、类OkButton从RectangularIcon中继承了height和width属性。
C、类OkButton中的display方法是对类Button中的display方法的重载。
D、类OkButton中的display方法是对类Button中的display方法的覆盖。
5.UML中所谓的“泛化”可以用以下哪个术语来代替( B)A.聚合B.继承C.抽象D.封装6.在UML交互图中,()表示操作之间的信息交换。
( B)A.控制流B.信息流C.初始活动D.活动7.以下哪个不是面向对象的概念( D )A.封装B.多态C.抽象D.聚类8.UML的英文全称是( A )A.Unified Modeling Language B.User Manage Language C.Unit Modeling Language D.以上都不对9.常用的UML工具有很多,下列哪个不是( D )A.rose B.powerdesign C.visio D.vss10.下列对操作描述错误的是( D)A.接口可以定义操作B.类可以定义操作C.操作可以作为顺序图中的消息D.对象可以定义操作11.在UML模型中,类用( B )表示A.直角矩形B.圆角矩形C.椭圆D.牛眼睛12.设计视图的静态方面采用(B)表现A.交互图B.类图和对象图C.状态图D.活动图13.用例视图的静态方面由(A )来表现A.用例图B.交互图C.状态图D.活动图二、根据下图完成填空。
Java期中考试参考答案一、编程题1.P118 ——4.191.public class DigitalPyramid {2.3.public static void main(String[] args) {4.// TODO Auto-generated method stub5.for(int i = 0; i < 8; i++)6.{7.8.//输出空格9.for(int j = 0; j < 7 - i; j++)10.System.out.print(" ");//5个空格11.12.//输出左边递增数字13.for(int k = 0; k < i + 1; k++)14.System.out.printf("%5d", (int)Math.pow(2,k));15.16.//输出右边递减部分17.for(int m = i; m > 0; m--)18.System.out.printf("%5d", (int)Math.pow(2,m-1));19.20.//换行21.System.out.println();22.}23.}24.}2.P326 ——11.1//GeometricObject.javapublic class GeometricObject {private String color;private boolean filled;private java.util.Date dateCreated;public GeometricObject(){this.dateCreated = new java.util.Date();}public GeometricObject(String color, boolean filled){this.color = color;this.filled = filled;this.dateCreated = new java.util.Date();}public String getColor(){return color;}public void setColor(String color){this.color = color;}public boolean isFilled(){return filled;}public void setFilled(boolean filled){this.filled = filled;}public java.util.Date getDateCreated(){return dateCreated;}public String toString(){return"Created on "+dateCreated+"\ncolor is "+color+"\nfilled:"+filled;}}//Triangle.javapublic class Triangle extends GeometricObject {private double side1 = 1.0;private double side2 = 1.0;private double side3 = 1.0;public Triangle(){}public Triangle(double side1, double side2, double side3){ this.side1 = side1;this.side2 = side2;this.side3 = side3;}public Triangle(double side1, double side2, double side3, String color, boolean filled){this(side1, side2, side3);setColor(color);setFilled(filled);}public double getArea(){double s = (side1 + side2 + side3) / 2.0;double area= Math.pow(s* (s- side1) * (s- side2) * (s- side3), 0.5);return area;}public double getPerimeter(){return side1 + side2 + side3;}public String toString(){return super.toString()+"\nArea = "+getArea()+"\nPerimeter = "+getPerimeter();}}//TestTriangle.javapublic class TestTriangle {public static void main(String[] args) {// TODO Auto-generated method stubTriangle t = new Triangle(1.0, 1.5, 1.0, "yellow", true);System.out.println(t.toString());Triangle t1 = new Triangle(3,4,5);System.out.println(t1.toString());}}3.P399 ——14.21.//Circle.java2.public class Circle {3.private double radius = 1.0;4.public Circle(){5.6.}7.public Circle(double radius){8.this.radius = radius;9.}10. public double getArea(){11. return Math.PI * radius * radius;12. }13.}1.//ComparableCircle.java2.public class ComparableCircle extends Circle implements Comparable{3. public ComparableCircle(double radius){4. super(radius);5. }6. public int compareTo(Object o){7. return (int)(getArea() - ((ComparableCircle)o).getArea());8. }9.}1.public class TestComparableCircle {2. public static void main(String[] args) {3. // TODO Auto-generated method stub4. ComparableCircle c1 = new ComparableCircle(5.0);5. ComparableCircle c2 = new ComparableCircle(6.0);6. int result = pareTo(c2);7. if(result < 0)8. System.out.println("c1 < c2");9. else if(0 == result)10. System.out.println("c1 = c2");11. else12. System.out.println("c1 > c2");13. }14. }二、改错题1.P324 ——11.141.//P324 11.142.public class Test {3.4.public static void main(String[] args) {5.// TODO Auto-generated method stub6.Object fruit = new Fruit();7.Object apple = (Apple)fruit;8.}9.10.}11.12.class Apple extends Fruit{13./*public Apple(){14.System.out.println("Apple's constructor is invoked!");15.}*/16.}17.18.class Fruit{19./*public Fruit(){20.System.out.println("Fruit's constructor is invoked!");21.}*/22.}运行结果:Exception in thread "main" ng.ClassCastException: Fruit cannot be cast to Appleat Test.main(Test.java:7)改正:可将第6行改为Object fruit = new Apple();2.P235 ——8.15书上程序正确,类内可直接访问私有数据。
JAVA程序设计期中基础知识测试A卷⼀、单项选择题(请将答案统⼀填写到题后表格中)1、Java编译器将源代码⽂件转换成:A 机器码B EspressoC c语⾔D字节码2、类的另⼀种说法是:A 对象B 模板C 实例D 程序3、类的实例⽅法所表⽰的是:A那个类的属性 B 那个类的⾏为C从那个类创建的对象的⾏为 D实例对象的状态4、使⽤什么来调⽤对象的构造⽅法和创建对象A +B newC instanceofD import5、当在计算条件表达式之前⾄少执⾏循环中的语句⼀次,应该使⽤:A do — while 循环B for循环C while循环D continue 语句6、哪⼀个运算符能返回除法运算的余数:A /B %C ?D +7、所有类的超类是:A SystemB ObjectC MathA 没有B 存储在JDK⽂件夹下所有的类C CLASSPATH⽂件夹中的类D /doc/d4f21125f18583d0496459ff.html ng 包中的类9、运⾏Java编译器的命令是:A javaB appletviewerC jdbD javac10、下⾯哪条命令可以运⾏java⼩应⽤程序:A javaB appletviewerC jdbD javac11、可以⽤来创建Java程序的SUN公司发布的免费⼯具集被称为:A JREB JDKC JVMD JNI12、对象的基本定义是下⾯中的哪⼀种:A 数据和能对数据进⾏的操作的集合B 能在浏览器或appletviewer中运⾏的任何Java程序C 联合起来形成完整应⽤程序的⽂件集合D 类⽂件13、域(属性)的作⽤是下⾯中的哪⼀种:A 存储表⽰对象状态的数据B 对对象的数据进⾏操作C 声明在当前类定义中使⽤的外部类D 打印⽂本信息到屏幕或appletviewer控制台14、下⾯表达式的值是多少: (int) 9.9A 9B 10C 9.9D 错误A while检验永远为真B 没有结束条件C 死循环D 以上全部都是16、switch语句中⽤什么词表⽰找不到匹配时使⽤的选择:A defaultB anyC last C none17、下列哪⼀种⽅法可以从该类的外部访问:A public void getValue( )B private void getValue( )C void pulic private getValue( )D void private getValue( )18、哪⼀⾏定义了⼀个静态变量:A pulic static int i ;B static int pulic i ;C int public static i ;D public int static i ;19、⼦类化⼀个类的关键字是:A subclassB augmentC modifyD extends20、若有命令 java Test Red Green Blue 则以下哪句话是不正确的?A 主⽅法的参数会获得值B 主⽅法的参数是个数组C 数组的长度应该是5D 若参数名叫args,则args[2]为“Blue”21、关于this(x,y);这个语句,以下理解正确的是:A 这是个叫this的⽅法的调⽤,参数为2个。
Java期中试题一、单项选择题(每小题2分, 共20小题40分)1. 下面不是Java语言中合法的标识符。
A. $moneyB. pointC. _abcD. %passwd2. 下面赋值语句不会出现编译错误。
A. byte b=12;B. char=“c”;C. float f = 2.3;D. boolean b = null;3.执行完下面程序段, 哪个结论是合法的?int a,b,result;a = 3;b = 2;c = (a-b<3?++a:b--);A. a的值是4, b的值是1B. a的值是3, b的值是1C.c的值是3 D.a的值是4, b的值是24. 现有下列代码片段:switch(a){case 1: System.out.println("Result 1");break;case 2:case 3: System.out.println("Result 2");break;default: System.out.println("Result 3");}a为值时将输出" Result 2"。
A. 1或2B. 1或2或3C. 2或3D. 35.定义一个表示5个值为null的字符串数组, 下面选项正确的是。
A. String[] a;B. String a[];C. char a[5][];D. String a[] = new String[5];6.假设“s=”Happy New Year!””, 则下面语句返回“New”的是。
A. s.substring(7,9)B. s.substring(7,10)C. s.substring(6,9)D. s.substring(6,10)7.成员变量与局部变量重名时, 若想在方法内使用成员变量, 要使用关键字A. superB. importC. thisD. return8.在类设计中, 类的成员变量要求只能够被同一个package下的类访问, 请问应该使用下列哪个修辞词?A. protectedB. publicC. privateD. 不需要任何修辞词9. 关于继承的说法正确的是:A. 子类将继承父类的非私有属性和方法B. 子类将继承父类所有的属性和方法C. 子类只继承父类public方法和属性D. 子类只继承父类的方法, 而不继承属性10.当编译并且运行以下程序的时候, 会发生什么情况?public class MyClass{String s;public static void main(String[] args) {MyClass m = new MyClass();m.go();}void MyClass(){s = "HelloWorld";}void go(){System.out.println(s);}}A. 代码不能编译B. 代码能编译, 但是运行时会抛出一个异常C. 代码能运行, 并且在标准输出中显示" HelloWorld"D.代码能运行, 并且在标准输出中显示"null"11. 以下程序的输出结果是public class Test {public static void main(String[] args) {A a = new A();}}class A {int i = 1;static int j = 2;{System.out.print(“i is ” + i + “ .”);}static {System.out.print(“j is ” + j + “ .“);}}A. .i.1..i.2B. .i.2..i.1C. .i.1D. .i.112.已知接口A定义如下, 那么可以实现接口A的类B是。
java基础练习题# Java基础练习题一、选择题1. Java是一种:A. 编译型语言B. 解释型语言C. 汇编语言D. 机器语言答案: B2. Java程序的执行流程是:A. 编译 -> 运行B. 编译 -> 链接 -> 运行C. 编译 -> 翻译 -> 执行D. 编译 -> 执行答案: C3. 下列哪个是Java的关键字:A. `int`B. `float`C. `double`D. `string`答案: A4. Java中,哪个关键字用于定义类:A. `public`B. `class`C. `interface`D. `void`答案: B5. Java中,哪个不是合法的标识符:A. `myClass`B. `class`C. `2variable`D. `Variable`答案: C二、填空题1. Java语言的跨平台特性是通过______实现的。
答案: Java虚拟机(JVM)2. Java的基本数据类型包括:byte, short, int, long, float, double, char, ______。
答案: boolean3. 在Java中,使用______关键字可以定义一个方法。
答案: void 或者其他返回类型4. Java中,一个类可以有多个构造方法,只要它们的______列表不同。
答案:参数5. Java中,`System.out.println()`用于______。
答案:输出信息到控制台三、简答题1. 简述Java的垃圾回收机制。
答案: Java的垃圾回收机制是一种自动内存管理功能,它负责回收不再使用的对象所占用的内存。
垃圾回收器定期检查内存中的对象,识别那些不再被任何引用指向的对象,并将它们从内存中清除,释放内存资源。
2. 描述Java中的继承和多态的概念。
答案:继承是Java中一个类(子类)可以继承另一个类(父类)的属性和方法。
JA V A 期中测试题(说明:不需要抄写题目,写清楚题号即可)一、判断题(正确的打√,错误的打×)1. Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。
2. Java异常处理中可以使用多个catch子句,此时应将高级别异常类的catch子句放在前面。
3. Java程序中创建新的类对象用关键字new,回收无用的类对象使用关键字free。
4.在Java中声明一个常量要用const关键字。
5. Java中的类不允许多重继承,但接口支持多重继承。
6. Java的各种数据类型所占用的内存长度与具体软硬件环境有关。
7.所谓抽象类就是包含有抽象方法的类。
8. 构造方法用于创建类的实例对象,构造方法名应与类名相同,在类中必须定义构造方法,且只能定义一个构造方法。
9. Java语言中的数组元素只能是基本数据类型而不能为对象类型。
10. 在Java中% 是取余运算符,要求两端操作数为整型。
二、选择(多选)、填空题1.一个Java程序运行从上到下的环境次序是()。
A.操作系统、Java程序、JRE/JVM、硬件B.JRE/JVM、Java程序、硬件、操作系统C.Java程序、JRE/JVM、操作系统、硬件D.Java程序、操作系统、JRE/JVM、硬件2.以下说法正确的是:( ) 。
A.一个可直接运行的Java源文件中可以有多个public类,其中必须有一个和文件同名。
B.一个可直接运行的Java源文件中可以没有public类C.一个可直接运行的Java源文件中只能有一个和文件同名的public类。
D.一个可直接运行的Java源文件中可以有多个public类,且可以没有和文件同名的类。
3.以下语句不能通过编译的是()。
A. int[] a={1,2,3,4};B. int b[];C. int c[]=new int[3];D. int d=new int[];4.下面代码定义的接口中,方法MyMethod()的修饰属性为:( )。
一、单项选择题(每题2分,共20分)1、Java语言是( D )A、面向问题的解释型高级编程语言B、面向机器的低级编程语言C、面向过程的编译型高级编程语言D、面向对象的解释型高级编程语言2、下列哪个是合法的Java标识符( A )?A.&2 B.123.9 C._2# D.public 3、编译Java Application 源程序文件产生的字节码文件的扩展名为( B )。
A.java B.class C.html D.exe4、有关类Demo,哪句描述是正确的( A )?public class Demo extends Base{private int count;public Demo(){System.out.println("A Demo object has been created");}protected void addOne() {count++; }}A.当创建一个Demo类的实例对象时,count的值为0。
B.当创建一个Demo类的实例对象时,count的值是不确定的。
C.超类对象中可以包含改变count 值的方法。
D.Demo的子类对象可以访问count。
5、Java Application源程序的主类是指包含有( A )方法的类。
A、main方法B、toString方法C、init方法D、actionPerformed方法6、如果任何包中的子类都能访问超类中的成员,那么应使用哪个限定词?( C )A.public B.private C.protected D.transient7、在Java中,存放字符串常量的对象属于( B )类对象。
A、CharacterB、StringC、StringBufferD、Vector8、在使用interface声明一个接口时,只可以使用( D )修饰符修饰该接口。
A、privateB、protectedC、private protectedD、public9、在编写异常处理的Java程序中,每个catch语句块都应该与( C )语句块对应,使得用该语句块来启动Java的异常处理机制。
广州民航职业技术学院2011/2012学年第一学期10信管1、2《Java程序设计》期中考试题(A卷)(闭卷)班级__10信管1班_______学号__30号__姓名____王运恒______成绩______一、选择题(请将答案按要求填在下表中;每题2分,共30分)1、Java源文件和编译后的文件扩展名分别为()A、.java和.classB、.class和.javaC、.class和.classD、.java和.java2、下列哪种类成员修饰符修饰的变量只能在本类中被访问?()A、protectedB、.publicC、defaultD、private3、Java语言类间的继承关系是()。
A、单继承B、多重继承C、不能继承D、不一定4、构造方法何时被调用( )A、类定义时B、创建对象时C、调用对象方法时D、使用对象的变量时5、下列关于接口的说法,()是正确的A、接口可以像类一样定义成员变量B、接口可以像类一样定义成员方法C、接口不能给出方法的实现体D、接口不能继承接口6、下面哪种不是Java的数据类型()A、基本类型B、数组类型C、类D、界面类型7、下列说法中错误的是()A、在Windows系统下,Frame窗口是有标题、边框的B、Frame的对象实例化后,没有大小,但是可以看到C、通过调用Frame的setSize()方法来设定窗口的大小D、通过调用Frame的setVisible(true)方法来设置窗口为可见8、对于一个三位的正整数n=789,以下结果为8的()A、n/10%2B、(n-n%10)/100C、n%10D、n%100/109、Java语言中创建一个对象使用的关键字为()A、classB、interfaceC、newD、create10、下列关于接口的说法,()是正确的A、接口可像类一样定义成员变量B、接口以像类一样定义成员方法C、接口不能给出方法的实现体D、接口不能继承接口11、自定义异常时,可以通过对下列哪一项进行继承?()A、Error类B、Applet类C、Exception类及其子类D、AssertionError类12、设有对象x具有属性a则访问该属性的方法为()A.a.x B、a.x( ) C、x.a D、x.a ( )13、以下语句执行后,str_r的结果为()。
大二java期中考试试题及答案一、选择题(每题2分,共20分)1. Java中,用于声明一个类的方法的关键字是?A. classB. methodC. functionD. declare答案:A2. 下列哪个选项是Java中用于捕获异常的关键字?A. tryB. catchC. throwD. all of the above答案:D3. 在Java中,下列哪个选项是正确的继承关系?A. final classB. abstract classC. interfaceD. both B and C答案:D4. Java中,用于定义接口的关键字是?A. interfaceB. abstractC. classD. method答案:A5. 下列哪个选项是Java中用于定义泛型的方法?A. genericB. typeC. <T>D. template答案:C6. Java中,用于声明一个方法的返回类型是?A. returnB. typeC. voidD. result答案:B7. 在Java中,下列哪个选项是正确的异常处理方式?A. try { ... } catch { ... }B. catch { ... } try { ... }C. try { ... } finally { ... }D. try { ... } catch { ... } finally { ... }答案:D8. Java中,下列哪个关键字用于定义一个私有方法?A. privateB. publicC. protectedD. default答案:A9. 在Java中,下列哪个选项是正确的多态性实现方式?A. 通过继承B. 通过接口C. 通过抽象类D. all of the above答案:D10. Java中,下列哪个选项是用于定义一个常量的正确方式?A. final intB. static intC. const intD. public int答案:A二、填空题(每题2分,共20分)1. Java中,用于声明一个类的方法的关键字是____。
10380 a 用于企业级应用程序开发的java平台是___.(A) J2SE (B) J2EE (C) J2ME (D) J2QE知识点:Java程序开发与运行环境答案:B10409 a 关于以下程序段的说法,正确的是____import java.awt.event.*;1.class MyListener implements2.ActionListener, ItemListener{3.public void actionPerformed(ActionEvent ae){4.System.out.println("Action");}5.public void itemStateChanged(ItemEvent ie){6.System.out.println("Item");7.}8.}(A) 可通过编译(B) 第2行产生编译错误,因为类头被分开定义了(C) 第3行产生编译错误,参数ae应该改为e(D) 第5行产生编译错误,方法名称不对,应该是itemStateChange知识点:Java程序的构成章:1 >> 答案:A12557 a 下列关于Java Application与Java Applet程序的差别描述正确的是________________。
(A) 运行方式不同,程序结构相同,运行工具不同,受到的限制相同(B) 运行方式相同,程序结构不同,运行工具不同,受到的限制相同(C) 运行方式相同,程序结构相同,运行工具不同,受到的限制也不同(D) 运行方式不同,程序结构不同,运行工具不同,受到的限制也不同知识点:Java程序的构成章:1 >> 答案:D10401 a main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的______.(A) public static void main()(B) public static void main(String[ ] args)(C) public static int main(String[ ] arg)(D) public void main(String arg[ ])知识点:Java程序的构成章:1 >> 答案:B11956 a javac的作用是________________。
《Java面向对象程序设计》2006-2007学年第一学期期中考试试卷及参考答案班级:学号:姓名:一、判断题(每题1分,共10分)1.Java 是大小写敏感的语言。
(T)2.当对象在程序中不再被引用时,它所占用的内存空间就会马上被释放。
(F)3.用final修饰的类必须被继承。
(F)4.每个类都只能有一个构造方法。
(F)5.applet可以在浏览器中运行。
(T)6.Java编程时,要求应尽量多用公共变量。
(F)7.Java语言规定构造方法名必须与类名相同。
(T)8.可以用new来创建一个类的实例,即“对象”。
(T)9.Java允许一个类可有有多个父类。
(F)10.Java语言的根类是Object类。
(T)二、选择题(每题2分,共40分)1.Java源文件和编译后的文件扩展名分别为(B)A、.class和.javaB、.java和.classC、.class和.classD、.java和.java2.Java语言中创建一个对象使用的关键字为(C)A、classB、interfaceC、newD、create3.设x = 5 则y = x-- 和y = --x的结果,使y分别为(C)A、5,5B、5,6C、5,4D、4,44.布尔型变量真值表示为(A)A、trueB、falseC、tD、f5.用abstract定义的类(D)A、可以被实例化B、不能派生子类C、不能被继承D、能被继承6.设数组Array由以下语句定义:int[] age=new int[10];则数组的第一个元素的正确引用方法为(D)A、age[1]B、Age[0]C、age[]D、age[0]7.continue语句(C)A、只中断最内层的循环B、只中断最外层的循环C、只中断所在层循环的当次循环D、只中断某一层的循环8.以public修饰的类如:public class Car{…},则Car(A)A、可被其它程序包中的类使用B、仅能被本程序包中的类使用C、不能被任意其它类使用D、不能被其它类继承9.下面那个方法可以正常调用println方法(A)A、System.out.println("b = " + b);B、System.out("b = " + b);C、println.System.out("b = " + b);D、System.out(println("b = " + b));10.下面哪个不是java的逻辑运算符?(C)A、&&B、!C、>=D、||11.下面那一个关键字不是用来进行循环的?(A)A、ifB、whileC、doD、for12.可以用下面哪个数组属性来得到数组的大小(C)A、countB、numberC、lengthD、elementNumber13.equals()方法根据使用时的类不同,可以比较(D)A、对象本身B、比较数值C、比较字符串内容D、以上三种情况都可以14.Java为移动设备提供的平台是(C)A、J2SEB、J2EEC、J2MED、JDK5.015.JDK中提供的文档生成器是(B)A、java.exeB、javadoc.exeC、javap.exeD、javaprof.exe16.public class Test{public static void main(String args[]){System.out.println(8>>1);}}以上程序段的运行结果是(C)A、2B、3C、4D、517.阅读以下程序:public class InitializationDemo{int score=100;public String isExcellent(){String result;if(score>=90)result =”Very very good”;return result;}public static void main(String[] args){InitializationDemo obj=new InitializationDemo();System.out.print(obj.isExcellent());}}根据以上程序段,以下说法正确的是(A)A、编译时报错B、运行时引发异常C、编译运行均正常,并输出Very very good!D、编译运行均正常,但没有任何输出18.阅读以下程序:public class InitializationDemo{static String str=”aaa”;static{System.out.print(str);System.out.print(“bbb”);}InitializationDemo(){str=”ccc”;System.out.print(str);}public static void main(String[] args){System.out.print(str);}}根据以上程序段,以下说法正确的是(E)A、编译时报错B、运行时引发异常C、编译运行均正常,并输出aaaD、编译运行均正常,并输出cccE、编译运行均正常,并输出aaa bbb aaaF、编译运行均正常,并输出aaa bbb cccG、编译运行均正常,并输出aaa bbb ccc cccH、编译运行均正常,并输出aaa bbb ccc aaa19.阅读以下程序:class A{public static void main(String[] args){String bar=new String(“bule”);String baz=new String(“green”);String var= new String(“red”);String c=baz;baz=var;bar=c;baz=bar;System.out.println(baz);}}执行”java A”的结果为(D)A、redB、blueC、nullD、green20.Java的访问权限控制由强到弱的顺序是(A)A、public > protected > default > privateB、public > default > protected > privateC、public > protected > private > defaultD、public > private > protected > default三、填空题(每空2分,共10分)1.面向对象技术的三要素分别是:多态、继承和封装。
Java基础期中考试一、填空题1.Java的三大体系分别是__ JavaEE _、_ JavaSE、JavaME _____。
2.Java程序的运行环境简称之为__ JRE ____。
3.Java中的程序代码都必须在一个类中定义,类使用___class___关键字来定义。
4.布尔常量即布尔类型的两个值,分别是_true_____和___false___。
5.Java中的注释可分为三种类型,分别是__单行注释____、_多行注释__、___文档注释___。
6.Java中的变量可分为两种数据类型,分别是___基本数据类型___和__引用数据类型____。
7.在Java中,byte类型数据占___1___个字节,short类型数据占___2___个字节,int类型数据占___4___个字节,long类型数据占__8____个字节。
8.在逻辑运算符中,运算符__ &____和___&&___用于表示逻辑与,___|__和___||___表示逻辑或。
9.若x = 2,则表达式( x + + )/3 的值是___0___。
10.若int a =2; a+=3;执行后,变量a的值为___5___。
11.若int []a={12,45,34,46,23}; ,则a[2]= ___34___。
12.若int a[3][2]={{123,345},{34,56},{34,56}},则a[2][1]= ___56___。
二、选择题1、以下选项中,哪些属于JDK工具?(多选)ABCDA、Java编译器B、Java运行工具C、Java文档生成工具D、Java打包工具2、Java属于以下哪种语言?CA、机器语言B、汇编语言C、高级语言D、以上都不对3、下面哪种类型的文件可以在Java虚拟机中运行?DA、.javaB、.jreC、.exeD、.class4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种? BA、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac 和java命令,需要将环境变量path设置为以下哪个选项?BA.d:\jdk; B.d :\jdk\bin; C.d:\jre\bin; D.d:\jre;6、以下选项中,哪些属于合法的标识符?(多选)ADA、Hello_WorldB、classC、123usernameD、username1237、以下关于变量的说法错误的是?CA、变量名必须是一个有效的标识符B、变量在定义时可以没有初始值C、变量一旦被定义,在程序中的任何位置都可以被访问D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明8、以下选项中,switch语句判断条件可以接收的数据类型有哪些?(多选)ABCDA、intB、byteC、charD、short9、假设int x = 2,三元表达式x>0?x+1:5 的运行结果是以下哪一个?CA、0B、2C、3D、510、下面的运算符中,用于执行除法运算是哪个?AA、/B、\C、%D、*11、下列语句哪些属于循环语句?(多选)ACA、for语句B、if语句C、while语句D、switch语句12、下面哪种写法可以实现访问数组arr的第1个元素? AA、arr[0]B、arr(0)C、arr[1]D、arr(1)13、以下哪个选项可以正确创建一个长度为3的二维数组?BA、new int [2][3];B、new int[3][];C、new int[][3];D、以上答案皆不对14、请先阅读下面的代码。
int x = 1;int y = 2;if (x % 2 == 0) {y++;} else {y--;}System.out.println("y=" + y);上面一段程序运行结束时,变量y的值为下列哪一项?AA、1B、2C、3D、switch语句三、程序分析题阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。
否则请说明编译失败的原因。
代码一:b=7(编译不通过。
int 值 4 和b 相加时,由于变量 b 的类型为byte,取值范围没有int 类型大,存不下int 类型的值,因此编译不通过)public class Test01 {public static void main(String[] args) {byte b = 3;b = b + 4;System.out.println("b=" + b);}}代码二:不能,y 只在{}有效(编译不通过。
这是因为y 是在最里层的代码块中定义的一个变量,只有在那个代码)public class Test02 {public static void main(String[] args){int x = 12;{int y = 96;System.out.println("x is " + x);System.out.println("y is " + y);}y = x;System.out.println("x is " + x);}}代码三:代码三:3 因为没有break,,所以 4 以后都执行public class Test03 {public static void main(String args[]) {int x = 4, j = 0;switch (x) {case 1:j++;case 2:j++;case 3:j++;case 4:j++;case 5:j++;default:j++;}System.out.println(j);}}代码四:987public class Test04 {public static void main(String args[]) {int n = 9;while (n > 6) {System.out.println(n);n--;}}}四、简答题1、请列举Java语言中的八种基本数据类型,并说明每种数据类型所占用的空间大小。
答:Java语言的八种基本数据类型有:byte字节型,占一个字节。
short短整型,占两个字节。
int整型,占4个字节。
long长整型,占8个字节。
float单精度浮点型,占4个字节。
double双精度浮点型,占8个字节。
char字符型,占两个字节。
boolean型,表示逻辑值,有true和false两个值,分别占一个字节。
2、简述Java的特点。
答:面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。
3、方法的重载和方法的重写的区别。
答:(1)相同点:①方法名称相同。
②都属于多态机制。
(2)不同点:位置、参数列表、权限修饰符、返回值类型、抛出异常不同。
重载:发生在同一个类中,方法名相同,参数列表不同,与权限修饰、返回值类型、抛出异常无关。
重写: 发生在继承类中,方法名和参数列表相同,权限修饰符大于等于父类、返回值类型小于等于父类、抛出异常小于等于父类。
五、编程题:请按照题目的要求编写程序并给出运行结果。
1、请编写程序,实现计算“1+3+5+7+…+99”的值。
提示:1)使用循环语句实现自然数1~99的遍历。
2)在遍历过程中,通过条件判断当前遍历的数是否为奇数,如果是就累加,否则不加。
public class getSum {public static void main(String[] args) {int sum = 0;for (int i = 1; i < 100; i++) {if (i % 2 != 0)sum += i;}System.out.println(sum);}}2、已知函数x + 3 ( x > 0 )y = 0 ( x = 0 )x2–1 ( x < 0 )请设计一个方法实现上面的函数,根据传入的值x的不同,返回对应的y值。
提示:1)定义一个static修饰符修饰的方法,方法接收一个int类型的参数x,返回值为int类型。
2)在方法中使用if…else if..else语句针对x的值进行三种情况的判断。
3)根据判断结果分别执行不同的表达式,并将结果赋予变量y。
4)在方法的最后返回y的值。
5)在main方法中调用设计好的方法,传入一个int型的值,将方法的返回值打印。
答:public class Test02 {public static void main(String args[]) { int y = function(0);System.out.println(y);}public static int function(int x) {int y;if (x > 0) {y = x + 3;} else if (x == 0) {y = 0;} else {y = x * x - 1;}return y;}}。