javaSE练习题2及答案

合集下载

javase练习题

javase练习题

javase练习题一、基础知识篇1. Java基本数据类型有哪些?分别写出它们的默认值。

2. 什么是封装?简述封装的优点。

3. 请写出Java中的四种访问修饰符,并说明它们的访问权限。

4. 什么是构造方法?它与普通方法的区别是什么?5. 在Java中,如何实现方法的重载和重写?二、面向对象篇2. 如何实现一个简单的Java类,包含两个属性和一个方法?3. 简述Java中的继承机制及其作用。

4. 什么是接口?与抽象类有什么区别?5. 请举例说明Java中的多态性。

三、集合框架篇1. Java集合框架中常用的集合类有哪些?2. 请简述ArrayList和LinkedList的区别。

3. 什么是HashMap?它的工作原理是什么?4. 请解释HashSet和TreeSet的区别。

5. 如何遍历一个List集合?四、异常处理篇1. 什么是异常?Java中的异常分为哪几类?2. 请举例说明trycatchfinally语句的使用方法。

3. 什么是自定义异常?如何创建和使用自定义异常?4. 请简述Java异常处理机制的作用。

int a = 10;int b = 0;int result = a / b;五、IO流篇1. 请简述Java IO流的分类。

2. 如何实现文件复制功能?3. 请解释字节流和字符流的区别。

4. 什么是序列化和反序列化?如何实现?5. 请举例说明Java中的文件操作。

六、多线程篇1. 什么是线程?线程和进程有什么区别?2. 请简述线程的生命周期。

3. 如何创建一个线程?有哪几种方式?4. 什么是线程同步?为什么需要线程同步?5. 请解释线程池的概念及其作用。

七、网络编程篇1. 请简述TCP和UDP协议的区别。

2. 如何实现一个简单的Socket通信?3. 什么是URL?如何解析一个URL?4. 请简述HTTP协议的工作原理。

5. 如何实现一个简单的HTTP服务器?八、Java新特性篇1. 请列举Java 8中的几个新特性。

精选新版JAVASE综合完整题库188题(含标准答案)

精选新版JAVASE综合完整题库188题(含标准答案)

2020年JAVASE综合考试试题库188题[含答案]一、选择题1."下列代码执行后的输出是哪项?public class Example {public static void main(String[] args) {List<String> al = new ArrayList<String>();al.add(""1"");al.add(""2"");al.add(""2"");al.add(""3"");System.out.println(al);}}"答案:A.[1,2,3]B.[1,2,3,3]C.[1,2,2,3]D.[2,1,3,2]2.调用Math.random()方法最有可能输出以下哪些结果?答案:DA.-0.12和0.56E3B.0.12和1.1E1C.-23.45和0.0D.0.356和0.033."以下代码的运行结果是什么?public class Example {public static void main(String[] args) {System.out.println(Math.min(0.0, -0.0));}}"答案:CA.代码编译失败B.输出0.0C.输出-0.0D.代码编译成功,但运行时输出异常信息4."以下代码的运行结果是什么?public class Example {public static void main(String[] args) {double d1 = -0.5;System.out.println(""Ceil d1="" + Math.ceil(d1));System.out.println(""Floor d1="" + Math.floor(d1));}}"答案:BA.输出Ceil d1=-0.0 Floor d1=-1.0B.输出Ceil d1=0.0 Floor d1=-1.0C.输出Ceil d1=-0.0 Floor d1=-0.0D.输出Ceil d1=0.0 Floor d1=0.05."给出以下代码,请问在程序的第6行插入那条语句,改程序可依次打印输出11、10、9?1.public class Example {2. public static void main(String[] args) {3. double x[] = { 10.2, 9.1, 8.7 };4. int i[] = new int[3];5. for (int a = 0; a < x.length; a++) {6.7. System.out.println(i[a]);8. }9. }10.}"答案:CA.i[1] = ((int)Math.min(x[a]));B.i[1] = ((int)Math.max(x[a]));C.i[1] = ((int)Math.ceil(x[a]));D.i[1] = ((int)Math.floor(x[a]));6."以下代码执行结果是?public class Example {public static void main(String[] args) {System.out.println(Math.min(Float.NaN, Float.POSITIVE_INFINITY));}}"答案:AA.输出NaNB.打印输出InfinityC.运行时异常,因为NaN不是有效的参数D.运行时异常,因为Infinity不是有效的参数7.下列哪些项是泛型的优点?答案:AA.不用向下强制类型转换B.代码容易编写C.类型安全D.运行速度快8.以下哪些是Collection接口的子接口?答案:BDA.DictionaryB.ListC.MapD.Set9.以下哪些有关Vector类的描述是正确的?答案:CA.该类是个public类B.该类是个final类C.该类实现了List接口D.该类可以序列化10.表示键值对概念的接口是哪项?答案:DA.SetB.ListC.CollectionD.Map11.现有int x = reader.read(),下列哪一项正确?答案:A.reader不是FileReader或者BufferedReader类型B.reader可以使FileReader或者BufferedReaderC.reader可以使FileReader类型,但不能使BufferedReader类型D.reader可以使BufferedReader类型,但不能使FileReader类型12.创建一个只能存放String的泛型ArrayList的语句是哪项?答案:BA.ArrayList<int> al = new ArrayList<int>();B.ArrayList<String> al = new ArrayList<String>();C.ArrayList al = new ArrayList<String>();D.ArrayList<String> al = new List<String>();13.以下哪个方法是Math类中定义的?答案:A.absolute()B.log()C.cosine()D.sine()14."现有:list是一个合法的集合引用getCollection()返回一个合法集合的引用,以下语句哪些是合法的?" 答案:CA.for(Object o : list)B.for(Object o : getCollection())C.for(Object o : list.iterator())D.for(Iterator I;list.iterator();i.hasNext())15."以下代码的执行结果是?public class Example {public static void main(String[] args) {TreeSet<String> t = new TreeSet<String>();if (t.add(""one""))if (t.add(""two""))if (t.add(""three""))t.add(""four"");for (String s : t) {System.out.print(s);}}}"答案:DA.oneB.onethreetwoC.onetwothreefourD.fouronethreetwo16."现有:public class Example {public static void main(String[] args) {TreeSet<String> s = new TreeSet<String>();s.add(""one"");s.add(""two"");// 插入代码处for (String s2 : sorted) {System.out.print(s2 + "" "");}}}和四个代码片段:s1:SortedSet sorted = s.tailSet(s.first());s2:SortedSet<String> sorted = s.tailSet(s.first());s3:SortedSet sorted = (SortedSet)s.tailSet(s.first());s4:SortedSet sorted = (SortSet<String>)s.tailSet(s.first());分别插入到插入代码处,哪项可以编译?"答案:A.S2B.S2和S3C.S2和S4D.S2、S3和S417.以下哪些语句用于创建一个Map实例?答案: DA.Map m = new Map();B.Map m = new Map(init capacity,increment capacity);C.Map m = new Map(new Collection());D.以上都不对18."现有如下类型:a - java.util.Hashtableb - java.util.Listc - java.util.ArrayListd - java.util.SortedSet和定义:1-使用本接口,允许用户控制集合中每个元素的插入位置2-使用本集合,确保用户可以按照递增或元素的自然顺序遍历集合3-本具体类型允许空元素及基于索引的访问4-本集合是同步的哪一组匹配是对的?"答案:A.2描述d,3描述bB.1描述b,3描述cC.3描述a,4描述bD.4描述a,2描述c19."现有:public class Example {public static void main(String[] args) {//插入代码处c.put(""X"", 123);}}下列哪些插入到插入代码处能够正常编译?"答案:A.Map c = new SortedMap();B.HashMap c = new HashMap();C.SortedMap c = new TreeMap();D.Map c = new LinkedHashMap();20.以下哪些类提供了创建一个目录的方法?答案:AA.FileB.DataOutputC.DirectoryD.FileDescriptor21."以下代码的执行结果是?public class Example {public static void main(String[] args) {File f = new File(""c:\\large.txt"");}}"答案:rge.txt文件在本地硬盘上被创建B.在Unix系统上运行失败,因为路径分割符不正确rge.txt文件在本地硬盘上没有被创建D.如果large.txt文件已经存在,则一个异常被抛出22."现有如下代码:public class Example {public static void main(String[] args) {try {int x=Integer.parseInt(""42a"");//插入代码处System.out.println(""oops"");}}}在插入代码处插入哪些语句可以在运行后输出oops?"答案:CA. } catch (IllegalArgumentException e) { (非法参数异常)B.} catch (IllegalStateException c) {C. } catch (NumbelFormatException n) {D.} catch (ClassCastException c) {23.欲构造ArrayList类继承了List接口,下列哪个方法是正确的?答案:BA.ArrayList myList=new Object()B. List myList=new ArrayList()C.ArrayList myList=new List()D.List myList=new List()24."关于以下代码,说法正确的是?class Example {public static void main(String[] args) throws IOException {System.out.println(""Before Try"");try {} catch (java.io.IOException e) {System.out.println(""Inside Catch"");}System.out.println(""At the End"");}}"答案:A.代码编译失败,因为无异常抛出B.代码编译失败,因为未导入IOException异常类C."输出Before TryAt the End"D."输出Inside CatchAt the End"25.以下哪些方法在Class类中定义?答案:A.getConstructors()B.getPrivateMethods()C.getDeclaredFields()D.getImports()26.以下哪些是catch语句能够捕获处理的异常?答案:ACA.ThrowableB.ErrorC.ExceptionD.String27."请问以下代码的直接执行结果是?class Example{public static void main(String[] args) {try {System.out.println(args[0]);System.out.println(""I'm nomal"");if (true)return;} catch (Exception ex) {System.out.println(""I'm exception"");if (true)return;} finally {System.out.println(""I'm finally."");}System.out.println(""Out of try."");}}"答案:AA."I'm exceptionI'm finally."B.代码不能编译通过,因为最后一条语句位于return后,不可到达C.代码编译通过,但运行时输出异常信息D."I'm nomalI'm finally."28."下列代码的运行结果是?class Example {public static void main(String[] args) throws IOException {try {return;} finally{System.out.println(""Finally"");}}}"答案:BA.无内容输出B.输出FinallyC.代码编译失败D.输出异常信息29.假设有自定义异常类ServiceException,那么抛出该异常的语句正确的是哪项?答案:CA.raise ServiceExceptionB.throw new ServiceException()C.throw ServiceExceptionD.throws ServiceException30.在方法声明中,说明该方法可能会抛出的异常列表时使用哪个关键字?答案:DA.throwB.catchC.finallyD.throws31."如下代码执行后的输出结果是?public class Example {public static void main(String[] args) {try {throw new Exception();} catch (Exception e) {try {throw new Exception();} catch (Exception e2) {System.out.println(""inner"");}System.out.println(""middle"");}System.out.println(""out"");}}"答案:DA.inner outerB.middle outerC.inner middle outerD.编译失败32."现有如下代码:public class Example {public static void main(String[] args) {// anew Example().topGo();}void topGo() {// bmiddleGo();}void middleGo() {// cgo();System.out.println(""late middle"");}void go() {// dthrow new Exception();}}为了使代码能够编译通过,需要在哪个地方加入声明throws Exception?" 答案:BA.dB.c和dC.b、c和dD.a、b、c和d33."下面代码的执行结果是?class Example extends Utils {public static void main(String[] args) {try {System.out.print(new Example().getlnt(""42""));} catch (Exception e) {System.out.println(""Exc"");}}int getlnt(String arg) throws Exception {return Integer.parseInt(arg);}}class Utils {int getlnt() {return 42;}}"答案:BA.NFExcB.42C.42NFExcD.编译失败34.以下哪个方法用于计算平方根?答案:BA.squareRoot()B.sqrt()C.root()D.sqr()35."关于以下代码,说法正确的是?class Example{public static void main(String[] args) throws IOException {if (args[0] == ""hello"") {throw new IOException();}}}"答案:AA.代码编译成功B.代码编译失败,因为main()方法是入口方法,不能抛出异常C.代码编译失败,因为IOException异常是系统异常,不能由应用程序抛出D.代码编译失败,因为字符串应该用equals方法判定一致性36.定义在Math类上的round(double d)方法的返回值类型是什么?答案:A.charB.intC.longD.double37."给出以下代码:class Example {public static void main(String[] args) throws IOException {try {methodA();} catch (IOException e) {System.out.println(""caught IOException"");}catch (Exception e) {System.out.println(""caught Exception"");}}}如果methodA()方法抛出一个IOException异常,则该程序的运行结果是什么?" 答案:A.无内容输出B.代码编译失败C.输出caught IOExceptionD.输出caught Exception38."给出以下代码,执行结果是?class Example {public static void main(String[] args) throws IOException {aMethod();}static void aMethod(){try {System.out.println(""Try"");return;} catch (Exception e) {System.out.println(""Catch"");}finally{System.out.println(""Finally"");}}"答案:A.代码编译成功,但运行期间抛出异常B.代码便以失败,因为return语句错误C.输出Try和FinallyD.输出Try39."以下代码中,如果test()方法抛出一个NullPointException异常时,打印输出什么内容?class Example {public static void main(String[] args) throws IOException {try {test();System.out.println(""Message1"");} catch (ArrayIndexOutOfBoundsException e) {System.out.println(""Message2"");}finally{System.out.println(""Message3"");}}}"答案:A.打印输出Message1B.打印输出Message2C.打印输出Message3D.以上都不对40."以下代码执行结果是什么?class Example {public static String output = """";public static void foo(int i) {try {if (i == 1) {throw new Exception();}output += ""1"";} catch (Exception e) {output += ""2"";return;} finally {output += ""3"";output += ""4"";}public static void main(String[] args) throws IOException {foo(0);foo(1);System.out.println(output);}}"答案:A.无内容输出B.代码编译失败C.输出13423D.输出1432341."以下代码执行结果是?public abstract class Example extends Base {public abstract void method();}class Base {public Base() throws IOException {throw new IOException();}}"答案:A.代码编译失败,因为非抽象类不能被扩展为抽象类B.代码编译失败,因为必须提供一个可以抛出或可以不抛出IOException异常的构造器C.代码编译失败,以in为必须提供一个可以抛出IOException异常或其子类的构造器D.代码编译成功42."关于以下代码正确的说法是:1.public class Example {2. int x = 0;3.4. public Example(int inVal) throws Exception {5. if (inVal != this.x) {6. throw new Exception(""Invalid input"");7. }8. }9.10. public static void main(String[] args) {11. Example t = new Example(4);12. }13.}"答案:A.代码在第1行编译错误B.代码在第4行编译错误C.代码在第6行编译错误D.代码在第11行编译错误43."现有如下代码:public class Example {public static void main(String[] args) {try {System.out.println(""before"");doRisyThing();System.out.println(""after"");} catch (Exception e) {System.out.println(""catch"");}System.out.println(""done"");}public static void doRisyThing() throws Exception{ //this code returns unless it throws an Exception }}该代码可能的执行结果有哪些?"答案:A.before catchB.before after doneC.before catch doneD.before after catch44.Java语言中异常的分类是哪项?答案:A.运行时异常和异常B.受检异常和非受检异常C.错误和异常D.错误和运行时异常45.下列关于Math类说法错误的是ng.Math类是final类,因此不能被其他类继承ng.Math类的构造器是私有的,即声明为private,不能实例化一个Math类的对象ng.Math类上定义的所有常量和方法均是public和static的,因此可以直接通过类名调用D.min()和max()方法的参数之一,如果是NaN值,则方法将返回另一个参数值46."现有:String s = ""write a line to a file"";w.print(s + ""\n"");哪一个是对的?"答案:A.w既可以是PrintWriter类型,也可以是BufferedWriter类型B.w既不可以是PrintWriter类型,也不可以是BufferedWriter类型C.w可以是PrintWriter类型,但不可以是BufferedWriter类型D.w既可以是BufferedWriter类型,也可以是PrintWriter类型47.请问以下哪些关于try…catch…finally结构中的finally语句的描述是正确的?答案:CA.只有当一个catch语句获得执行后,finally语句才获得执行B.只有当catch语句未获得执行时,finally语句才获得执行C.如果有finally语句,return语句将在finally语句执行完毕后才会返回D.只有当异常抛出时,finally语句才获得执行48.以下哪个语句用于获取数组中的元素个数?答案:AA.intArray.size();B.intArray.size();C.intArray.length;D.intArray.length();49."下列代码在JDK1.5以上版本执行的结果是?public class Example {public static void main(String[] args) {Integer i = 10;Integer j = 10;System.out.println(i == j);i = 210;j = 210;System.out.println(i == j); (超过-128~127为false)}答案:BA.抛出异常B.输出true falseC.输出true trueD.输出false false50.数组是什么类型?答案:AA.引用类型B.基本数据类型C.不能确定D.其他类型51.下面哪条语句不正确?答案:AA.int[4] a;B.int a[];C.int[] a;D.int[] a,b;52.下面哪条语句不正确?答案:CA.int[] a={1,2,3};B.int a[]=new int[4];C.int[] a=new int[];D.int[] a=new int[]{2,3,4};53.存在Employee类,如何创建一个长度为3的Employee类型数组?答案:BA.Employee[3] e;B.Employee[] e=new Employee[3];C.Employee e[3];D.Employee[3] e=new Employee[];54.以下那种初始化数组的方式是错误的?答案:CA.String[] names = {"zhang","wang","li"};B."String names[] = new String[3];names[2] = ""li"";names[0] = ""zhang"";names[1] = ""wang"";"C.String[3] names = {"zhang","wang","li"};D.以上写法都正确55.以下哪些是声明一个字符串数组的正确形式?答案:ABDA.String[] s;B.String []s;C.Sting [s]D.String s[]56.以下哪些语句正确?答案:ADA.double snow[] = new double[31];B.double snow[31] = new array[31];C.double snow[31] = new array;D.double[] snow = new double[31];57.假设存在数组a,如何获得a的长度?答案:CA.a.length()B.a.len()C.a.lengthD.a.len58."现有:f是一个File类实例的合法引用fr是一个FileReader类实例的合法引用br是一个BufferedReader类实例的合法引用如下代码:String line = null;//插入代码处System.out.println(line);}哪一行代码插入到插入代码处将循环一次输出文本文件的一行?" 答案:A.while((line = f.read())!=null){B.while((line = fr.read())!=null){C.while((line = br.read())!=null){D.while((line = br.readLine())!=null){59."以下代码运行输出的结果是什么?public class Example {public static void main(String[] args) {char[] c = new char[100];System.out.println(c[50]);}}"答案:DA.打印输出50B.打印输出49C.打印输出\u0000D.打印输出null60."public class TestReplace {public static void stringReplace(String text){text=text.replace('j', 'i');}public static void bufferReplace(StringBuffer text){ text=text.append(""C"");}public static void main(String[] args){String textString=new String(""java""); StringBuffer bufferString=new StringBuffer(""java"");stringReplace(textString);bufferReplace(bufferString);System.out.println(textString+bufferString);}}运行结果是?"答案:AA.javajavaCB.javaCjavaCC.javajavaD.javajavaCjava61."下列代码的执行结果是什么?public class Example {public static void main(String[] args) {int index = 1;int[] foo = new int[3];int bar = foo[index];int baz = bar + index;System.out.println(baz);}}"答案:BA.打印输出0B.打印输出1C.打印输出2D.运行期间有异常抛出62."给出下面代码:public class Example{static int arr[] = new int[10];public static void main(String a[]){System.out.println(arr[1]);}}那个语句是正确的?"答案:DA.编译时将产生错误B.编译时正确,运行时将产生错误C.输出0D.输出null63.从InputStream对象中如何创建一个Reader对象?答案:A.使用InputStream类中定义的createReader()方法B.吃用Reader类中的createReader()方法C.构造一个InputStreamReader实例,将InputStream对象作为InputStreamReader类构造器的参数传入D.构造一个OutputStreamReader实例,将InputStream对象作为OutputStreamReader类构造器的参数传入64."以下程序执行结果是?public class Example {public static void main(String[] args) throws IOException {String s = ""x,yy,123"";Scanner sc = new Scanner(s);while (sc.hasNext()) {System.out.println(sc.next() + "" "");}}"答案:A.x yyB.x,yy,123C.x yy 123D.x,yy65.以下哪个描述是正确的?答案:A.多线程是Java语言独有的B.多线程需要多CPUC.多线程要求一个计算机拥有单独一个CPUD.Java语言支持多线程66."下列代码的执行结果是?public class Example{public static void main(String args[]) {Thread t = new Thread() {public void run() {pong();}};t.run();System.out.print(""ping"");}static void pong() {System.out.print(""pong"");}}"答案:A.pingpongB.pongpingC.pingpong和pongping都有可能D.都不输出67.以下哪个关于Runnable的描述是正确的?答案:A.Runnable是Java语言的一个关键字,用于修饰类,来表明该类是一个独立线程B.Runnable是一个接口,实现该接口的类对象可以提供给Thread类构造器作为创建线程的C.Runnable是一个类,继承该类的子类可以作为独立的线程存在D.以上皆不对68.在服务器上提供了基于TCP的时间服务应用,该应用使用port为6666。

javaSE作业

javaSE作业

javaSE作业JavaSE测试题⼀、选择题(不定项)1.在JAVA中,下列哪些说法是正确的( A C )A.java源⽂件的扩展名为.javaB.写好的java源程序可以直接运⾏C.编写的源程序必须先编译后才能运⾏D.程序员可以读懂扩展名为.class的⽂件2.下列标识符哪个是合法的( BD )A.classB.$abcC.1234D._name3.下⾯哪些赋值语句是正确的?( ab d)A. long test = 012;B. float f = -412;C. int other = (int) true;D. double d = 0x12345678;E. byte b = 128; -128~1274.在Java中,下列语句不能通过编译的有(b )A. String s= “join”+ 3;B. int a= “join”+3;C. int a= ‘a’+5;D. float f=5+5.5;5.设a = 3,则表达式(--a )< < a的结果为( b )A. 16B. 8C. 24D. 126.下列代码运⾏的结果是(c )public static void main(String[] args) {int x = 4;int y = 5;if(x++>4 & ++y>5) {x++;}System.out.println("x=" + x + ",y=" + y); }A. x=4,y=5B. x=4,y=6C. x=5,y=6D. x=6,y=67.尝试运⾏下⾯的代码会发⽣什么?( b ) public class Test {public static void main(String[] args) { boolean m = true;if (m = false) {System.out.println("true");} else {System.out.println("false");}}}A.输出字符串”true”B.输出字符串”false”C.编译时错误D.运⾏时错误8.编译并运⾏以下代码将发⽣什么? ( e) public static void main(String args[]){ char digit = 'a';for (int i = 0; i < 10; i++){switch (digit){case 'x' :{int j = 0;System.out.println(j);}default :{int j = 100;System.out.println(j);}}}int i = j;System.out.println(i);}A.输出11次100B.输出10次100,然后抛出运⾏期异常C.编译错误,因为变量i不能在main()⽅法中被声明2次D.编译错误,因为变量j不能在main()⽅法中被声明2次E.以上都不对9. class Demo{public static int fun(int c){return c+=2;}public static void main(String[] args){int temp = fun(2);System.out.println(temp);}}打印结果是(b )A. 2B. 4C. 6D. 810.下⾯哪些函数是public void aMethod(){...}的重载函数?(bd )A. void aMethod( ){...}B. public int aMethod(int a, float b){...}C. public void aMethod (){...}D. public float aMethod (int m){…}11.在java中,关于数组描述正确的是( b d )A.数组中的索引下标从1开始B.存储在数组当中的数据都属于同⼀数据类型C.通过数组名.length()能获得数组的长度D.数组的最⼤索引下标是数组的长度减112.下⾯程序的输出结果是什么( d )int[] arr = new int[10];System.out.println(arr[0]);A.编译不通过B.运⾏时出错C.输出nullD.输出013.下⾯哪个语句正确地声明⼀个整型的⼆维数组( c d )A. int a[][] = new int[][];B. int b[10][10] = new int[][];C. int c[][] = new int[10][10];D. int []d[] = new int[10][10];14.以下代码输出是( d )class Demo {public static void main(String[] args) {int i = 0;int sum = 0;while (i <= 10) {i++;if (i % 2 != 0)continue;sum += i;}System.out.println(sum);}}A. 55B. 45C. 35D. 3015.和下⾯代码能完成相同的选项是( b )class Demo {public static void main(String[] args) {int i = 1;int sum = 0;while (i <= 100) {if (i % 2 == 0) {sum = sum + i;}i++;}System.out.println(sum);}}A. for (int x =1; x<=100;x++){ sum=sum+x;}B. for (int x =0; x<=100;x+=2){ sum=sum+x;}C. for (int x =1; x<=100;x+=2){ sum=sum+x;}D.上述全对16.下列有关类、对象和实例的叙述,正确的是哪⼀项?( d )A.类就是对象,对象就是类,实例是对象的另⼀个名称,三者没有差别B.对象是类的抽象,类是对象的具体化,实例是对象的另⼀个名称C.类是对象的抽象,对象是类的具体化,实例是类的另⼀个名称D.类是对象的抽象,对象是类的具体化,实例是对象的另⼀个名称17.下⾯关于java中包的说法正确的是( a,d c )A.在java中可以使⽤import语句导⼊包B.在java中可以使⽤package语句导⼊包C.位于同⼀个包中的类,不需要导包就可以直接访问D.不同的包中可以出现类名相同的类18.下列有关抽象类的叙述正确的是哪项? (c)A.抽象类中⼀定含有抽象⽅法B.抽象类既能被实例化也能被继承C.抽象类的声明必须包含abstract关键字D.抽象类中不能有构造⽅法19.下列有关接⼝的叙述错误的是哪项?( a d )A.接⼝中只能包含抽象⽅法和常量B.⼀个类可以实现多个接⼝C.类实现接⼝时必须实现其中的⽅法D.接⼝不能被继承20.运⾏以下代码⽚段,输出结果是?( d )class X {Y b = new Y();X() {System.out.print("X");}}class Y {Y() {System.out.print("Y");}}public class Z extends X {Y y = new Y();Z() {System.out.print("Z");}public static void main(String[] args) {new Z();}}//静态(初始化⼀次)动态(创建⼀次执⾏⼀次)构造A. ZB. YZC. XYZD. YXYZ21.下列关于类的继承的描述,正确的有( b d )A.⼀个类可以同时继承多个⽗类B.⼀个类可以具有多个⼦类C.⼦类会⾃动拥有⽗类所有的⽅法D.⼀个类继承另⼀个类需要使⽤extends关键字22.下列选项中关于java中this关键字的说法错误的有( ab d )A.this关键字是⼀个对象的引⽤ //本类B.this关键字可以⽤于引⽤当前类以外其他类型的对象C.this可⽤于构造函数中,调⽤类本⾝重载的构造函数,但是必须写在⾸⾏D.this可⽤于静态⽅法中//this属于对对象的调⽤,静态⽅法属于类23.下列关于构造函数的说法正确的是( a b d )A.⽅法名必须与类名相同B.使⽤new关键字创建对象时,java虚拟机会⾃动调⽤构造函数C.我们在定义⼀个类时,必须要声明⾄少⼀个构造函数D.构造函数中不能使⽤return语句24.编译并运⾏以下代码将发⽣什么?( d )class MyClass {int x;MyClass(int i) {x = i;}public static void main(String args[]) {MyClass m1 = new MyClass(100);MyClass m2 = new MyClass(100);if (m1.equals(m2)) {System.out.println("Both are equal");} else {System.out.println("Both are not equal");}}}A.代码编译时报出错误提⽰信息“equals()⽅法未定义”B.编译通过,抛出运⾏期异常.C.输出Both are equal.D.输出Both are not equal25.运⾏以下的main()⽅法,结果是?( a c )1 public static void main(String[] args)2 {3 String myString;4 int x = 100;56 if (x < 100) myString = "x is less than 100";7 if (x > 100) myString = "x is greater than 100";8 System.out.println(myString.length());9 }A.编译时报出错误提⽰信息“变量myString没有被初始化”B.编译通过C.编译未能通过。

JavaSE考试题参考答案

JavaSE考试题参考答案

JavaSE考试题(时间150分钟)一.选择题(75分)1.在Java中负责对字节码解释执行的是( B )A.垃圾回收器B.虚拟机C.编译器D.多线程机制2.BufferedReader的父类是( B )A.FileReaderB.ReaderC.PipedReaderD.InputStreamReader3.在读字符文件Post.dat时,使用该文件作为参数的类( A )A.BufferedReaderB.DataInputStreamC.DataOutputStreamD.FileInputStream4.下列不是InputStream子类的是( C )A.FileInputStreamB.ObjectInputStreamC.CharInputStreamD.ZipInputStream5.下列方法中可以用来创建一个新线程的是( D )A.实现ng.Runnable接口并重写start()方法B.实现ng.Runnable接口并重写run()方法C.继承ng.Thread类并重写start()方法D.继承ng.Thread类并重写run()方法6.当启动Applet程序时,首先调用的方法是( B )A.stop()B.init()C.start()D.destroy()7.序列化一个类时,如果要隐藏某个成员,使之在反序列化时不能看到搞成员的真实数据,应当使用的关键字是( C )A.hiddernB.privateC.transientD.destroy8.将键值对(key--value)保存到映射(Map)对象中的方法是( B )。

A.add(Object key,Object value)B.put(Object key,Object value)C.insert(Object key,Object value)D.get(Object key,Object value)9. 一个java Application 运行后,在系统中是作为一个( B )A.线程B.进程C.进程或线程D.不可预知10.下列关于线程调度的叙述中,错误的是:( D)A.调用线程的sleep()方法,可以使比当前线程优先级低的线程获得运行机会B.调用线程的yield()方法,只会使与当前线程相同优先级的线程获得运行机会C.当有比当前线程优先级高的线程出现时,高优先级的线程将抢占CPU并运行D.具有相同优先级的多个线程的调度一定是分时的.11.下列关于线程优先级别的说法中,正确的是( C)A.线程的优先级是不能改变的B.线程的优先级在创建线程时设定C.在创建线程后的任何时候都可以设置D.B,C12.实现一个线程的创建方法有几种( B )A.一种B.二种C.三种D.四种13.下列关于泛型的说法,错误的是( B )A、泛型是一种参数化类型B、可以取代继承机制。

最新精编JAVASE综合考核题库完整版188题(含答案)

最新精编JAVASE综合考核题库完整版188题(含答案)

2020年JAVASE综合考试试题库188题[含答案]一、选择题1."以下代码执行结果是?public class Example {public static void main(String[] args) {System.out.println(Math.min(Float.NaN, Float.POSITIVE_INFINITY));}}"答案:AA.输出NaNB.打印输出InfinityC.运行时异常,因为NaN不是有效的参数D.运行时异常,因为Infinity不是有效的参数2."关于以下代码正确的说法是:1.public class Example {2. int x = 0;3.4. public Example(int inVal) throws Exception {5. if (inVal != this.x) {6. throw new Exception(""Invalid input"");7. }8. }9.10. public static void main(String[] args) {11. Example t = new Example(4);12. }13.}"答案:A.代码在第1行编译错误B.代码在第4行编译错误C.代码在第6行编译错误D.代码在第11行编译错误3."现有如下代码:public class Example {public static void main(String[] args) {try {System.out.println(""before"");。

新版精编JAVASE综合完整题库188题(含答案)

新版精编JAVASE综合完整题库188题(含答案)

2020年JAVASE综合考试试题库188题[含答案]一、选择题1."以下代码的输出结果是什么?public class Example {public static void main(String[] args) {System.out.println(Math.round(Float.MAX_V ALUE));}}"答案:BA.输出Integer.MAX_V ALUEB.输出一个最接近Float.MAX_V ALUE的整数C.编译失败D.运行时输出异常信息2."关于以下代码,说法正确的是?class Example{public static void main(String[] args) throws IOException {if (args[0] == ""hello"") {throw new IOException();}}}"答案:AA.代码编译成功B.代码编译失败,因为main()方法是入口方法,不能抛出异常C.代码编译失败,因为IOException异常是系统异常,不能由应用程序抛出D.代码编译失败,因为字符串应该用equals方法判定一致性3."关于以下代码,说法正确的是?class Example {public static void main(String[] args) throws IOException {System.out.println(""Before Try"");try {} catch (java.io.IOException e) {System.out.println(""Inside Catch"");}System.out.println(""At the End"");}}"答案:A.代码编译失败,因为无异常抛出B.代码编译失败,因为未导入IOException异常类C."输出Before TryAt the End"D."输出Inside CatchAt the End"4."给出以下代码:class Example {public static void main(String[] args) throws IOException {try {methodA();} catch (IOException e) {System.out.println(""caught IOException"");}catch (Exception e) {System.out.println(""caught Exception"");}}}如果methodA()方法抛出一个IOException异常,则该程序的运行结果是什么?"答案:A.无内容输出B.代码编译失败C.输出caught IOExceptionD.输出caught Exception5."以下代码中,如果test()方法抛出一个NullPointException异常时,打印输出什么内容?class Example {public static void main(String[] args) throws IOException {try {test();System.out.println(""Message1"");} catch (ArrayIndexOutOfBoundsException e) {System.out.println(""Message2"");}finally{System.out.println(""Message3"");}}}"答案:A.打印输出Message1B.打印输出Message2C.打印输出Message3D.以上都不对6."以下代码执行结果是?public abstract class Example extends Base {public abstract void method();}class Base {public Base() throws IOException {throw new IOException();}}"答案:A.代码编译失败,因为非抽象类不能被扩展为抽象类B.代码编译失败,因为必须提供一个可以抛出或可以不抛出IOException异常的构造器C.代码编译失败,以in为必须提供一个可以抛出IOException异常或其子类的构造器D.代码编译成功7."关于以下代码正确的说法是:1.public class Example {2. int x = 0;3.4. public Example(int inVal) throws Exception {5. if (inVal != this.x) {6. throw new Exception(""Invalid input"");7. }8. }9.10. public static void main(String[] args) {11. Example t = new Example(4);12. }13.}"答案:A.代码在第1行编译错误B.代码在第4行编译错误C.代码在第6行编译错误D.代码在第11行编译错误8."现有如下代码:public class Example {public static void main(String[] args) {try {System.out.println(""before"");doRisyThing();System.out.println(""after"");} catch (Exception e) {System.out.println(""catch"");}System.out.println(""done"");}public static void doRisyThing() throws Exception{//this code returns unless it throws an Exception}}该代码可能的执行结果有哪些?"答案:A.before catchB.before after doneC.before catch doneD.before after catch9."下列代码的执行结果是?class Example {private void method1() throws Exception {throw new RuntimeException();}public void method2() {try {method1();} catch (RuntimeException e) {System.out.println(""Caught Runtime Exception"");} catch (Exception e) {System.out.println(""Caught Exception"");}}public static void main(String[] args) throws IOException { Example a = new Example();a.method2();}}"答案:A.代码编译失败B.输出Caught Runtime ExceptionC.输出Caught ExceptionD.输出Caught Runtime Exception和Caught Exception10."以下代码的输出结果是什么?选择所有的正确答案。

精编新版JAVASE综合完整考题库188题(含参考答案)

精编新版JAVASE综合完整考题库188题(含参考答案)

2020年JAVASE综合考试试题库188题[含答案]一、选择题1.以下哪些集合接口支持重复元素存在?答案:BA.CollectionB.ListC.MapD.Set2."以下代码的输出结果是什么?选择所有的正确答案。

class Example {public static void main(String[] args) throws IOException {for (int i = 0; i < 10; i++) {try {try {if (i % 3 == 0)throw new Exception(""E0"");System.out.println(i);break;} catch (Exception inner) {i *= 2;if (i % 3 == 0)throw new Exception(""E1"");} finally {++i;}} catch (Exception outer) {i += 3;} finally {--i;}}}}"答案:A.4B.5C.6D.73.Java语言中异常的分类是哪项?答案:A.运行时异常和异常B.受检异常和非受检异常C.错误和异常D.错误和运行时异常4.以下哪个方法是Math类中定义的?答案:A.absolute()B.log()C.cosine()D.sine()5.定义在Math类上的round(double d)方法的返回值类型是什么?答案:A.charB.intC.longD.double6.以下哪个方法用于计算平方根?答案:BA.squareRoot()B.sqrt()C.root()D.sqr()7.调用Math.random()方法最有可能输出以下哪些结果?答案:DA.-0.12和0.56E3B.0.12和1.1E1C.-23.45和0.0D.0.356和0.038."以下代码的输出结果是什么?public class Example {public static void main(String[] args) {System.out.println(Math.round(Float.MAX_V ALUE));}}"答案:BA.输出Integer.MAX_V ALUEB.输出一个最接近Float.MAX_V ALUE的整数C.编译失败D.运行时输出异常信息9."以下代码的运行结果是什么?public class Example {public static void main(String[] args) {System.out.println(Math.min(0.0, -0.0));}}"答案:CA.代码编译失败B.输出0.0C.输出-0.0D.代码编译成功,但运行时输出异常信息10."给出以下代码,为了结果输出-12.0,方法method(d)应为以下哪个方法?public class Example {public static void main(String[] args) {double d = -11.1;double d1 = method(d);System.out.println(d1);}}"答案: AA.floor()B.ceil()C.round()D.abs()11.以下哪些类提供了创建一个目录的方法?答案:AA.FileB.DataOutputC.DirectoryD.FileDescriptor12.以下哪些有关Vector类的描述是正确的?答案:CA.该类是个public类B.该类是个final类C.该类实现了List接口D.该类可以序列化13."以下代码执行结果是什么?class Example {public static String output = """";public static void foo(int i) {try {if (i == 1) {throw new Exception();}output += ""1"";} catch (Exception e) {output += ""2"";return;} finally {output += ""3"";}output += ""4"";}public static void main(String[] args) throws IOException { foo(0);foo(1);System.out.println(output);}}"答案:A.无内容输出B.代码编译失败C.输出13423D.输出1432314.表示键值对概念的接口是哪项?答案:DA.SetB.ListC.CollectionD.Map15.List接口的特点是哪项?答案:CA.不允许重复元素,元素有顺序B.允许重复元素,元素无顺序C.允许重复元素,元素有顺序D.不允许重复元素,元素无顺序16.欲构造ArrayList类继承了List接口,下列哪个方法是正确的?答案:BA.ArrayList myList=new Object()B. List myList=new ArrayList()C.ArrayList myList=new List()D.List myList=new List()17."下列代码执行后的输出是哪项?public class Example {public static void main(String[] args) {List<String> al = new ArrayList<String>();al.add(""1"");al.add(""2"");al.add(""2"");al.add(""3"");System.out.println(al);}}"答案:A.[1,2,3]B.[1,2,3,3]C.[1,2,2,3]D.[2,1,3,2]18."现有:list是一个合法的集合引用getCollection()返回一个合法集合的引用,以下语句哪些是合法的?" 答案:CA.for(Object o : list)B.for(Object o : getCollection())C.for(Object o : list.iterator())D.for(Iterator I;list.iterator();i.hasNext())19."以下代码的执行结果是?public class Example {public static void main(String[] args) {TreeSet<String> t = new TreeSet<String>();if (t.add(""one""))if (t.add(""two""))if (t.add(""three""))t.add(""four"");for (String s : t) {System.out.print(s);}}}"答案:DA.oneB.onethreetwoC.onetwothreefourD.fouronethreetwo20."现有:public class Example {public static void main(String[] args) {TreeSet<String> s = new TreeSet<String>();s.add(""one"");s.add(""two"");// 插入代码处for (String s2 : sorted) {System.out.print(s2 + "" "");}}}和四个代码片段:s1:SortedSet sorted = s.tailSet(s.first());s2:SortedSet<String> sorted = s.tailSet(s.first());s3:SortedSet sorted = (SortedSet)s.tailSet(s.first());s4:SortedSet sorted = (SortSet<String>)s.tailSet(s.first()); 分别插入到插入代码处,哪项可以编译?"答案:A.S2B.S2和S3C.S2和S4D.S2、S3和S421.以下哪些语句用于创建一个Map实例?答案: DA.Map m = new Map();B.Map m = new Map(init capacity,increment capacity);C.Map m = new Map(new Collection());D.以上都不对22."下列代码执行后的结果是?public class Example {public static void main(String[] args) {try {System.out.println(Float.NaN == Float.NaN);System.out.println(Float.POSITIVE_INFINITY==Float.POSITIVE_INFINITY); } catch (Exception e) {System.out.println(""Exception"");}}"答案:DA.输出+G20:J20false falseB.输出ExceptionC.输出true trueD.输出false true23.下列哪些项是泛型的优点?答案:AA.不用向下强制类型转换B.代码容易编写C.类型安全D.运行速度快24."下列代码的执行结果是?class Example {public static void main(String[] args) throws IOException {int i = 1, j = 1;try {i++;j--;if (i == j) {j++;}} catch (ArithmeticException e) {System.out.println(0);} catch (ArrayIndexOutOfBoundsException e) {System.out.println(1);} catch (Exception e) {System.out.println(2);} finally {System.out.println(3);}System.out.println(4);}}"答案:CDA.输出1B.输出2C.输出3D.输出425.以下哪些方法在Class类中定义?答案:A.getConstructors()B.getPrivateMethods()C.getDeclaredFields()D.getImports()26.请问以下哪个程序代码体现了对象之间的is a关系?答案:A."public interface Color {}public class Shape {private Color color;}"B."public interface Component {}public class Cpmtaomer implements Component {private Component[] children;}"C."public class Species{}public class Animal{private Species species;}"D."public class Animal{public interface Species{}private Species species;}"27."给出以下代码,改程序的执行结果是?interface Base {int k = 0;}public class Example implements Base {public static void main(String[] args) {int i;Example exm = new Example();i = exm.k;i = Example.k;i = Base.k;System.out.println(i);}}"答案:DA.无内容输出B.代码编译失败C.代码运行时输出异常信息D.打印输出028.Java语言中异常的分类是哪项?答案:CA.运行时异常和异常B.受检异常和非受检异常C.错误和异常D.错误和运行时异常29."现有代码:public class Example {public static void main(String[] args) {try {System.out.print(Integer.parseInt(""forty"")); } catch (RuntimeException e) {System.out.println(""Runtime"");}catch (NumberFormatException e) {System.out.println(""Number"");}}}执行结果是什么?"答案:CA.输出NumberB.输出RuntimeC.输出40D.编译失败30."对以下两个代码片段说法正确的是?代码片段1:int a = 3;int b = 0;int c = a / b;代码片段2:float a = 3.0f;float b = 0.0f;float c = a / b;"答案:CA.执行两端代码都会抛出异常B.执行两段代码都无异常抛出C.执行两段代码,只有代码片段1抛出异常D.执行两段代码,只有代码片段2抛出异常31."下列代码执行后的结果是?public class Example {public static void main(String[] args) {try {double x = 64.0;double y = 0.0;System.out.println(x % y);} catch (Exception e) {System.out.println(""Exception"");}}}"答案:DA.编译失败B.输出ExceptionC.输出InfinityD.输出NaN32.关于异常处理,说法错误的是?答案:CA.try…catch…finally结构中,必须有try语句块,catch语句块和finally语句块不是必须的,但至少要两者取其一B.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将子类放在后面,父类放在前面C.一个方法可以抛出多个异常,方法的返回值也能够是异常D.Throwable是所有异常的超类33."关于以下代码,说法正确的是?class Example {public static void main(String[] args) throws IOException {System.out.println(""Before Try"");try {} catch (Throwable e) {System.out.println(""Inside Catch"");}System.out.println(""At the End"");}}"答案:BA.代码编译失败,因为无异常抛出B.代码编译失败,因为未导入IOException异常类C."输出Before TryAt the End"D."输出Inside CatchAt the End"34."下列代码的执行结果是?class Example {private void method1() throws Exception {throw new RuntimeException();}public void method2() {try {method1();} catch (RuntimeException e) {System.out.println(""Caught Runtime Exception"");} catch (Exception e) {System.out.println(""Caught Exception"");}}public static void main(String[] args) throws IOException { Example a = new Example();a.method2();}}"答案:A.代码编译失败B.输出Caught Runtime ExceptionC.输出Caught ExceptionD.输出Caught Runtime Exception和Caught Exception35."现有如下代码:public class Example {public static void main(String[] args) {try {int x=Integer.parseInt(""42a"");//插入代码处System.out.println(""oops"");}}}在插入代码处插入哪些语句可以在运行后输出oops?"答案:CA. } catch (IllegalArgumentException e) { (非法参数异常)B.} catch (IllegalStateException c) {C. } catch (NumbelFormatException n) {D.} catch (ClassCastException c) {36."现有如下代码:public class Example {public static void main(String[] args) {try {System.out.println(""before"");doRisyThing();System.out.println(""after"");} catch (Exception e) {System.out.println(""catch"");}System.out.println(""done"");}public static void doRisyThing() throws Exception{//this code returns unless it throws an Exception}}该代码可能的执行结果有哪些?"答案:A.before catchB.before after doneC.before catch doneD.before after catch37.以下哪些描述是正确的?答案:CDA.try语句块后必须至少存在一个catch语句块B.try语句块后可以存在不限数量的finally语句块C.try语句块后必须至少存在一个catch语句块或finally语句块D.如果catch和finally语句块同时存在,则catch语句块必须位于finally语句块前38."请问以下代码的直接执行结果是?class Example{public static void main(String[] args) {try {System.out.println(args[0]);System.out.println(""I'm nomal"");if (true)return;} catch (Exception ex) {System.out.println(""I'm exception"");if (true)return;} finally {System.out.println(""I'm finally."");}System.out.println(""Out of try."");}}"答案:AA."I'm exceptionI'm finally."B.代码不能编译通过,因为最后一条语句位于return后,不可到达C.代码编译通过,但运行时输出异常信息D."I'm nomalI'm finally."39."下列代码的运行结果是?class Example {public static void main(String[] args) throws IOException {try {return;} finally{System.out.println(""Finally"");}}}"答案:BA.无内容输出B.输出FinallyC.代码编译失败D.输出异常信息40.假设有自定义异常类ServiceException,那么抛出该异常的语句正确的是哪项?答案:CA.raise ServiceExceptionB.throw new ServiceException()C.throw ServiceExceptionD.throws ServiceException41."现有代码如下:public class Example {void topGo() {try {middleGo();} catch (Exception e) {System.out.println(""catch"");}}void middleGo() throws Exception {go();System.out.println(""late middle"");}void go() throws Exception {throw new Exception();}public static void main(String[] args) {Example example = new Example();example.topGo();}}该代码的执行结果是?"答案:BA.输出late middleB.输出catchC.输出late middle catchD.输出catch late middle42.请问以下哪些关于try…catch…finally结构中的finally语句的描述是正确的?答案:CA.只有当一个catch语句获得执行后,finally语句才获得执行B.只有当catch语句未获得执行时,finally语句才获得执行C.如果有finally语句,return语句将在finally语句执行完毕后才会返回D.只有当异常抛出时,finally语句才获得执行43."关于以下代码,说法正确的是?class Example{public static void main(String[] args) throws IOException {if (args[0] == ""hello"") {throw new IOException();}}}"答案:AA.代码编译成功B.代码编译失败,因为main()方法是入口方法,不能抛出异常C.代码编译失败,因为IOException异常是系统异常,不能由应用程序抛出D.代码编译失败,因为字符串应该用equals方法判定一致性44."关于以下代码,说法正确的是?class Example {public static void main(String[] args) throws IOException {System.out.println(""Before Try"");try {} catch (java.io.IOException e) {System.out.println(""Inside Catch"");}System.out.println(""At the End"");}}"答案:A.代码编译失败,因为无异常抛出B.代码编译失败,因为未导入IOException异常类C."输出Before TryAt the End"D."输出Inside CatchAt the End"45."给出以下代码:class Example {public static void main(String[] args) throws IOException {try {methodA();} catch (IOException e) {System.out.println(""caught IOException"");}catch (Exception e) {System.out.println(""caught Exception"");}}}如果methodA()方法抛出一个IOException异常,则该程序的运行结果是什么?" 答案:A.无内容输出B.代码编译失败C.输出caught IOExceptionD.输出caught Exception46."以下代码的执行结果是?public class Example {public static void main(String[] args) {File f = new File(""c:\\large.txt"");}}"答案:rge.txt文件在本地硬盘上被创建B.在Unix系统上运行失败,因为路径分割符不正确rge.txt文件在本地硬盘上没有被创建D.如果large.txt文件已经存在,则一个异常被抛出47."当fragile()方法抛出一个IllegalArgumentException异常时,下列代码的运行结果是什么?public static void main(String[] args) throws IOException {try {fragile();} catch (NullPointerException e) {System.out.println(""NullPointerException thrown"");} catch (Exception e) {System.out.println(""Exception thrown"");} finally {System.out.println(""Done with exceptions"");}System.out.println(""myMethod is done"");}}"答案:A.输出NullPointerException thrownB.输出Exception thrownC.输出Done with ExceptionD.输出myMethod is done48."以下代码执行的结果是:public class Example {public static void main(String[] args) {int[] x = { 1, 2, 3 };x[1] = (x[1] > 1) ? x[2] : 0;System.out.println(x[1]);}}"答案:CA.输出1B.输出2C.输出3D.输出449.数组是什么类型?答案:AA.引用类型B.基本数据类型C.不能确定D.其他类型50.数组中可以存什么类型的数据?答案:CA.只能存基本数据类型B.只能存引用类型C.都可以D.都不可以51.下面哪条语句不正确?答案:AA.int[4] a;B.int a[];C.int[] a;D.int[] a,b;52.下面哪条语句不正确?答案:CA.int[] a={1,2,3};B.int a[]=new int[4];C.int[] a=new int[];D.int[] a=new int[]{2,3,4};53.存在Employee类,如何创建一个长度为3的Employee类型数组?答案:BA.Employee[3] e;B.Employee[] e=new Employee[3];C.Employee e[3];D.Employee[3] e=new Employee[];54.以下哪些是声明一个字符串数组的正确形式?答案:ABDA.String[] s;B.String []s;C.Sting [s]D.String s[]55.以下哪些是初始化数组的正确形式?答案:ABDA.char c[] = {'a','b'};B.int []x[] = {{1,2,3},{1,2,3}};C.int x[3] = {1,2,3};D.int []x = {0,0,0};56.假设存在int型数组a,哪项是正确的增强for循环迭代该数组?答案:CA.for(int[] a){}B.for(int a){}C.for(int x:a){}D.for(int i>0;i<a.length;i++){}57."以下代码运行输出的结果是什么?public class Example {public static void main(String[] args) {char[] c = new char[100];System.out.println(c[50]);}}"答案:DA.打印输出50B.打印输出49C.打印输出\u0000D.打印输出null58."以下代码执行结果是?public class Example {public static void main(String[] args) {TreeMap<String, String> map = new TreeMap<String, String>();map.put(""one"", ""1"");map.put(""two"", ""2"");map.put(""three"", ""3"");displayMap(map);}static void displayMap(TreeMap map) {Collection<String> c = map.entrySet();Iterator<String> i = c.iterator();while (i.hasNext()) {Object o = i.next();System.out.print(o.toString());}}}"答案:A.onetwothreeB.123C.one=1three=3two=2D.onethreetwo59."给出下面代码:public class Example{static int arr[] = new int[10];public static void main(String a[]){System.out.println(arr[1]);}}那个语句是正确的?"答案:DA.编译时将产生错误B.编译时正确,运行时将产生错误C.输出0D.输出null60.下面哪个是包装器类型?答案:AA.IntegerB.intC.charD.double61.从InputStream对象中如何创建一个Reader对象?答案:A.使用InputStream类中定义的createReader()方法B.吃用Reader类中的createReader()方法C.构造一个InputStreamReader实例,将InputStream对象作为InputStreamReader类构造器的参数传入D.构造一个OutputStreamReader实例,将InputStream对象作为OutputStreamReader类构造器的参数传入62.以下哪个描述是正确的?答案:A.多线程是Java语言独有的B.多线程需要多CPUC.多线程要求一个计算机拥有单独一个CPUD.Java语言支持多线程63.以下哪个是Runnable接口中定义的方法?答案:A.start()B.run()C.stop()D.yield()64."以下代码的执行结果是?public class Example implements Runnable {public static void main(String args[]) {Example ex = new Example();Thread t = new Thread(ex);t.start();}void run() {System.out.print(""pong"");}}"答案:A.输出pongB.运行时输出异常信息C.运行后无任何输出D.编译失败65."现有:t是一个合法的Thread对象的引用,并且t的合法run()方法如下:public void run() {System.out.print(""go"");}执行:t.start();t.start();t.run();后结果是什么?"答案:A.go goB.go go goC.go之后跟着一个异常D.go go之后跟着一个异常66."下列代码的执行结果是?public class Example{public static void main(String args[]) {Thread t = new Thread() {public void run() {pong();}};t.run();System.out.print(""ping"");}static void pong() {System.out.print(""pong"");}}"答案:A.pingpongB.pongpingC.pingpong和pongping都有可能D.都不输出67.以下哪个关于Runnable的描述是正确的?答案:A.Runnable是Java语言的一个关键字,用于修饰类,来表明该类是一个独立线程B.Runnable是一个接口,实现该接口的类对象可以提供给Thread类构造器作为创建线程的依据C.Runnable是一个类,继承该类的子类可以作为独立的线程存在D.以上皆不对68.Java UDP编程主要用到的两个类型是答案:A.UDPSocketB.DatagramSocketC.UDPPacketD.DatagramPacket69.为了保证方法的线程安全,声明方法的时候必须使用哪个修饰符?答案:A.newB.transientC.voidD.synchronized70."下列代码的执行结果是什么?public class Example {public static void main(String[] args) {int index = 1;int[] foo = new int[3];int bar = foo[index];int baz = bar + index;System.out.println(baz);}}"答案:BA.打印输出0B.打印输出1C.打印输出2D.运行期间有异常抛出71.以下哪个是10进制数123的正确的十六进制表示?答案:A.0x67B.0x123C.0x7BD.6772."现有:f是一个File类实例的合法引用fr是一个FileReader类实例的合法引用br是一个BufferedReader类实例的合法引用如下代码:String line = null;//插入代码处System.out.println(line);}哪一行代码插入到插入代码处将循环一次输出文本文件的一行?" 答案:A.while((line = f.read())!=null){B.while((line = fr.read())!=null){C.while((line = br.read())!=null){D.while((line = br.readLine())!=null){73."现有:String s = ""write a line to a file"";w.print(s + ""\n"");哪一个是对的?"答案:A.w既可以是PrintWriter类型,也可以是BufferedWriter类型B.w既不可以是PrintWriter类型,也不可以是BufferedWriter类型C.w可以是PrintWriter类型,但不可以是BufferedWriter类型D.w既可以是BufferedWriter类型,也可以是PrintWriter类型74.以下哪些是FileOutputSteram类的正确构造形式?答案:A.FileOutputStream(FileDescriptor fd)B.FileOutputStream(String n,boolean a)C.FileOutputStream(boolean a)D.FileOutputStream(File f)75.以下哪些描述是正确的?答案:A.InputStream和OutputStream类是基于字节流的B.ObjectInputStream类和ObjectOutputStream类不支持序列化的对象C.Reader和Writer是基于字符流的D.Reader类和Writer类是支持对象序列化的首选76.以下哪些描述是正确的?A.Writer类可以使用不同的字符编码向输出流写入字符B.Writer类可以向输出流写入Unicode字符C.Writer类提供向输出流写入任意Java基本数据类型的方法D.Writer类提供向输出流写入引用数据类型的方法77.属性可以使用哪个访问权限修饰符?答案:CA.publicB.protectedC.privateD.都可以78.构造方法可以使用哪个访问权限修饰符?答案:AA.publicB.protectedC.privateD.都可以79.如果类中的成员变量只可以被同一包访问,则使用如下哪个约束符?答案:CA. privateB.publicC.protectedD.no modifier80.为了能够访问对封装的属性的访问和修改,方法往往用哪个修饰符修饰?答案:AA.publicB.protectedC.privateD.都可以81."下列代码在JDK1.5以上版本执行的结果是?public class Example {public static void main(String[] args) {Integer i = 10;Integer j = 10;System.out.println(i == j);i = 210;System.out.println(i == j); (超过-128~127为false) }}"答案:BA.抛出异常B.输出true falseC.输出true trueD.输出false false82."执行下列语句后,变量i的值是:byte i = 127; byte(-2^7 ~ 2^7-1)i += 1; (当溢出时回到最小)"答案:DA.128B.0C.-1D.-12883.Java语言中有多少个包装器类型?答案:BA.7B.8C.9D.无数个84.下面哪个赋值语句是合法的?答案:CA.float a = 2.0B.double b = 2.0C.int c = 2D.long d = 285.下面哪个类型是引用类型?答案:AA.EmployeeB.intC.charD.double86.下面哪个不是引用类型?A.StringB.DoubleC.FloatD.float87.下面哪个说法正确?答案:AA.基本数据类型都可以直接使用=赋值B.引用类型绝对不能直接用=赋值,都需要使用new关键字C.String不是引用类型D.char是引用类型88.0.5和0.5f的以下说法正确的式?答案:BA.都是引用类型B.Double是引用类型,double是基本数据类型C.都是基本数据类型D.Double是基本数据类型,double是引用类型89."Student s1=new Student(""John"");Student s2=new Student(""Alice"");s1=s2;System.out.println(s1.getName());输出结果为?"答案:DA.JohnB.nullC.AliceD.不能确定90."public class TestChange {/**** @param str*/public static void changeStr(String str){str=“"";}public static void main(String[] args){String str=""welcome"";changeStr(str);System.out.println(str);}}运行结果是?"答案:AA.welcomeC.nullD.welcome 91."以下程序运行的结果是:public class Example {public static void main(String[] args) {System.out.println(""String"".replace('g', 'G') == ""String"".replace('g','G')); System.out.println(""String"".replace('t', 't') == ""String"".replace('t','t')); }}"答案:CA.输出true trueB.输出true falseC.输出false falseD.输出false true92."public class TestReplace {public static void stringReplace(String text){text=text.replace('j', 'i');}public static void bufferReplace(StringBuffer text){text=text.append(""C"");}public static void main(String[] args){String textString=new String(""java"");StringBuffer bufferString=new StringBuffer(""java"");stringReplace(textString);bufferReplace(bufferString);System.out.println(textString+bufferString);}}运行结果是?"答案:AA.javajavaCB.javaCjavaCC.javajavaD.javajavaCjava93."下列代码执行后的结果是?public class Example {public static void main(String[] args) {try {double x = 64.0;double y = 0.0;System.out.println(x % y);} catch (Exception e) {System.out.println(""Exception"");}}}"答案:DA.编译失败B.输出ExceptionC.输出InfinityD.输出NaN94.以下哪些是关于完全封装的正确描述?答案:CA.所有的变量都是私有的B.所有的方法都是私有的C.只有通过提供的方法才能访问类属性D.通过方法和变量名均可访问属性95.下面哪个是符合命名规范的包名?答案:A96.Java类中如何创建对象?答案:BA.new调用main方法B.new调用构造方法C.create调用构造方法D.create方法97.对象用什么操作符调用属性或方法?答案:AA..B.*C.xD.%98."public class TestBlock {private int x;{System.out.println(""实例块"");}static{System.out.println(""静态块"");}public static void main(String[] args) {new TestBlock();new TestBlock();}}运行结果是?"答案:BA."静态块实例块"B."静态块实例块实例块"C."静态块"D."实例块"99."public class TestBlock {private int x;{System.out.println(""实例块"");}static{System.out.println(""静态块"");}public static void main(String[] args) {}}运行结果是?"答案:AA.静态块B.无输出C."静态块实例块"D.实例块100.对于内部类,以下说法错误的是答案:A.匿名内部类可以实现接口或继承其他类,但不能同时即实现接口又继承类B.匿名内部类不能有任何明确的构造器C.内部类可以定义在外部类类体中,(前面对)也可以定义在外部类的方法体中(错误),和外部类不同,内部类均能使用访问修饰符,并能使用static修饰D.在Java中,对内部类的嵌套层次没有限制101."对于以下代码,请问插入哪个语句可以访问到内部类InsideOne?public class Example {public static void main(String[] args) {EnclosingOne eo=new EnclosingOne();//插入语句处}}class EnclosingOne{public class InsideOne{}}"答案:A.InsideOne ei=new eo.InsideOne();B.InsideOne ei=EnclosingOne.new InsideOne();C.InsideOne ei=new EnclosingOne.InsideOne();D.EnclosingOne.InsideOne ei=eo.new InsideOne();102.有关匿名内部类的描述正确的是答案:A.匿名内部类没有显式构造器B.匿名内部类可以实现接口C.匿名内部类可以继承非final类D.匿名内部类可以同时实现接口和继承非final类103.以下哪些类型的变量可以被一个内部类访问?答案:A.所有static变量B.所有final变量C.所有的实例成员变量D.只有final静态变量104.以下关于内部类的描述哪些是正确的?答案:A.定义在内部类中的变量不能被static修饰符修饰,除非内部类本身是静态的B.定义在类中非方法中的内部类,可以访问外部类的所有变量,而不管变量的访问控制声明C.一个内部类实际上是外部类的子类D.内部类可以被private修饰符修饰105."下面的代码段中,执行之后i 和j 的值是什么?int i = 1;int j;j = i++;"答案:AA.1,1B.1,2C.2,1D.2,2106.声明包使用哪个关键字?答案:DA.packB.PackageC.bagD.package107.public class A{}中几个构造方法?答案:AA.1个B.2个C.3个D.0个108.哪个包可以不导入直接使用?答案:CA.java.ioB.java.utilngD.java.sql109.关于Java源代码文件,下列说法错误的是?答案:DA.一个源文件最多只能包含一个顶层的public类定义B.一个源文件可以不包含任何代码定义。

javase考试试题和答案

javase考试试题和答案

javase考试试题和答案一、单项选择题(每题2分,共20分)1. Java中,下列哪个关键字用于声明一个类?()A. classB. interfaceC. abstractD. final答案:A2. 在Java中,下列哪个选项是正确的字符串拼接方式?()A. "Hello" + "World"B. "Hello" + 5C. "Hello" + 5.0D. 5 + "Hello"答案:A3. Java中,下列哪个选项是正确的方法重载?()A. public void display() {}public void display(int x) {}B. public void display(int x) {}public void display(double x) {}C. public void display(int x) {}public void display(int x, int y) {}D. public void display() {}public void display() {}答案:C4. Java中,下列哪个选项是正确的继承关系?()A. class A extends B {}B. class A implements B {}C. class A implements B, C {}D. class A extends B, C {}答案:C5. Java中,下列哪个选项是正确的异常处理语句?()A. try { } catch { }B. try { } catch (Exception e) { }C. try { } catch (e) { }D. try { } catch (Exception) { }答案:B6. Java中,下列哪个选项是正确的泛型使用方式?()A. List list = new ArrayList();B. List<String> list = new ArrayList<String>();C. List list = new ArrayList<String>();D. List<String> list = new ArrayList();答案:B7. Java中,下列哪个选项是正确的线程创建方式?()A. Thread thread = new Thread();B. Thread thread = new Thread(Runnable r);C. Thread thread = new Thread(new Thread());D. Thread thread = new Thread(new Runnable() {});答案:D8. Java中,下列哪个选项是正确的集合初始化方式?()A. List list = new ArrayList();B. List list = new LinkedList();C. List list = new Vector();D. List list = new Stack();答案:A9. Java中,下列哪个选项是正确的文件读写方式?()A. FileReader fr = new FileReader("file.txt");B. FileWriter fw = new FileWriter("file.txt");C. BufferedReader br = new BufferedReader(new FileReader("file.txt"));D. BufferedWriter bw = new BufferedWriter(new FileWriter("file.txt"));答案:C10. Java中,下列哪个选项是正确的网络编程方式?()A. ServerSocket serverSocket = new ServerSocket(8080);B. Socket socket = new Socket("localhost", 8080);C. DatagramSocket socket = new DatagramSocket(8080);D. MulticastSocket socket = new MulticastSocket(8080);答案:A二、多项选择题(每题3分,共15分)1. Java中,下列哪些关键字用于修饰类?()A. publicB. abstractC. finalD. strictfp答案:ABCD2. Java中,下列哪些关键字用于修饰方法?()A. publicB. privateC. protectedD. synchronized答案:ABCD3. Java中,下列哪些关键字用于修饰变量?()A. publicB. privateC. protectedD. volatile答案:BCD4. Java中,下列哪些关键字用于修饰接口?()A. publicB. abstractC. finalD. strictfp答案:ACD5. Java中,下列哪些关键字用于修饰异常?()A. tryB. catchC. throwD. throws答案:BCD三、填空题(每题4分,共20分)1. Java中,一个类可以继承________个父类。

精选新版2020年JAVASE综合测试题库188题(含答案)

精选新版2020年JAVASE综合测试题库188题(含答案)
aMethod();
}
static void aMethod(){
try {
System.out.println(""Try"");
return;
} catch (Exception e) {
System.out.println(""Catch"");
}finally{
System.out.println(""Finally"");
C.如果有finally语句,return语句将在finally语句执行完毕后才会返回
D.只有当异常抛出时,finally语句才获得执行
5."给出以下代码:
class Example {
public static void main(String[] args) throws IOException {
} catch (Exception e) {
System.out.println(""Exc"");
}
}
int getlnt(String arg) throws Exception {
return Integer.parseInt(arg);
}
}
class Utils {
int getlnt() {
return 42;
}
}"
答案:B
A.NFExc
B.42
C.42NFExc
D.编译失败
4.请问以下哪些关于try…catch…finally结构中的finally语句的描述是正确的?
答案:C
A.只有当一个catch语句获得执行后,finally语句才获得执行

精选新版JAVASE综合考核题库188题(含答案)

精选新版JAVASE综合考核题库188题(含答案)

2020年JAVASE综合考试试题库188题[含答案]一、选择题1.以下哪个方法用于计算平方根?答案:BA.squareRoot()B.sqrt()C.root()D.sqr()2."下面代码的执行结果是?class Example extends Utils {public static void main(String[] args) {try {System.out.print(new Example().getlnt(""42""));} catch (Exception e) {System.out.println(""Exc"");}}int getlnt(String arg) throws Exception {return Integer.parseInt(arg);}}class Utils {int getlnt() {return 42;}}"答案:BA.NFExcB.42C.42NFExcD.编译失败3."关于以下代码,说法正确的是?class Example{public static void main(String[] args) throws IOException {if (args[0] == ""hello"") {throw new IOException();}}}"答案:AA.代码编译成功B.代码编译失败,因为main()方法是入口方法,不能抛出异常C.代码编译失败,因为IOException异常是系统异常,不能由应用程序抛出D.代码编译失败,因为字符串应该用equals方法判定一致性4."给出以下代码:class Example {public static void main(String[] args) throws IOException {try {methodA();} catch (IOException e) {System.out.println(""caught IOException"");}catch (Exception e) {System.out.println(""caught Exception"");}}}如果methodA()方法抛出一个IOException异常,则该程序的运行结果是什么?" 答案:A.无内容输出B.代码编译失败C.输出caught IOExceptionD.输出caught Exception5."给出以下代码,执行结果是?class Example {public static void main(String[] args) throws IOException {aMethod();}static void aMethod(){try {System.out.println(""Try"");return;} catch (Exception e) {System.out.println(""Catch"");}finally{System.out.println(""Finally"");}}}"答案:A.代码编译成功,但运行期间抛出异常B.代码便以失败,因为return语句错误C.输出Try和FinallyD.输出Try6."以下代码中,如果test()方法抛出一个NullPointException异常时,打印输出什么内容?class Example {public static void main(String[] args) throws IOException {try {test();System.out.println(""Message1"");} catch (ArrayIndexOutOfBoundsException e) {System.out.println(""Message2"");}finally{System.out.println(""Message3"");}}}"答案:A.打印输出Message1B.打印输出Message2C.打印输出Message3D.以上都不对7."以下代码执行结果是什么?class Example {public static String output = """";public static void foo(int i) {try {if (i == 1) {throw new Exception();}output += ""1"";} catch (Exception e) {output += ""2"";return;} finally {output += ""3"";}output += ""4"";}public static void main(String[] args) throws IOException { foo(0);foo(1);System.out.println(output);}}"答案:A.无内容输出B.代码编译失败C.输出13423D.输出143238."以下代码的输出结果是什么?选择所有的正确答案。

精选JAVASE综合完整版考核题库188题(含参考答案)

精选JAVASE综合完整版考核题库188题(含参考答案)
}
class Base {
public Base() throws IOException {
throw new IOException();
}
}"
答案:
A.代码编译失败,因为非抽象类不能被扩展为抽象类
B.代码编译失败,因为必须提供一个可以抛出或可以不抛出IOException异常的构造器
System.out.println(""Inside Catch"");
}
System.out.println(""At the End"");
}
}"
答案:
A.代码编译失败,因为无异常抛出
B.代码编译失败,因为未导入IOException异常类
C."输出Before Try
At the End"
D."输出Inside Catch
B.只有当catch语句未获得执行时,finally语句才获得执行
C.如果有finally语句,return语句将在finally语句执行完毕后才会返回
D.只有当异常抛出时,finally语句才获得执行
4."关于以下代码,说法正确的是?
class Example{
public static void main(String[] args) throws IOException {
test();
System.out.println(""Message1"");
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println(""Message2"");

精选最新版JAVASE综合测试题库188题(含答案)

精选最新版JAVASE综合测试题库188题(含答案)

2020年JAVASE综合考试试题库188题[含答案]一、选择题1."现有如下代码:public class Example {public static void main(String[] args) {try {System.out.println(""before"");doRisyThing();System.out.println(""after"");} catch (Exception e) {System.out.println(""catch"");}System.out.println(""done"");}public static void doRisyThing() throws Exception{//this code returns unless it throws an Exception}}该代码可能的执行结果有哪些?"答案:A.before catchB.before after doneC.before catch doneD.before after catch2.以下哪些描述是正确的?答案:CDA.try语句块后必须至少存在一个catch语句块B.try语句块后可以存在不限数量的finally语句块C.try语句块后必须至少存在一个catch语句块或finally语句块D.如果catch和finally语句块同时存在,则catch语句块必须位于finally语句块前3."请问以下代码的直接执行结果是?class Example{public static void main(String[] args) {try {System.out.println(args[0]);System.out.println(""I'm nomal"");。

精选JAVASE综合模拟题库188题(含标准答案)

精选JAVASE综合模拟题库188题(含标准答案)
B.i[1] = ((int)Math.max(x[a]));
C.i[1] = ((int)Math.ceil(x[a]));
D.i[1] = ((int)Math.floor(x[a]));
11.现有int x = reader.read(),下列哪一项正确?
答案:
A.reader不是FileReader或者BufferedReader类型
B.输出0.0
C.输出-0.0
D.代码编译成功,但运行时输出异常信息
8."以下代码的运行结果是什么?
public class Example {
public static void main(String[] args) {
double d1 = -0.5;
System.out.println(""Ceil d1="" + Math.ceil(d1));
14.List接口的特点是哪项?
答案:C
A.不允许重复元素,元素有顺序
System.out.println(""Floor d1="" + Math.floor(d1));
}
}
"
答案:B
A.输出Ceil d1=-0.0 Floor d1=-1.0
B.输出Ceil d1=0.0 Floor d1=-1.0
C.输出Ceil d1=-0.0 Floor d1=-0.0
D.输出Ceil d1=0.0 Floor d1=0.0
B.reader可以使FileReader或者BufferedReader
C.reader可以使FileReader类型,但不能使BufferedReader类型

精选最新版2020年JAVASE综合完整考试题库188题(含参考答案)

精选最新版2020年JAVASE综合完整考试题库188题(含参考答案)
12. }
13.}"
答案:
A.代码在第1行编译错误
B.代码在第4行编译错误
C.代码在第6行编译错误
D.代码在第11行编译错误
7."下列代码的执行结果是?
class Example {
private void method1() throws Exception {
throw new RuntimeException();
}
}
}"
答案:
A.打印输出Message1
B.打印输出Message2
C.打印输出Message3
D.以上都不对
5."以下代码执行结果是什么?
class Example {
public static String output = """";
public static void foo(int i) {
ng.Math类的构造器是私有的,即声明为private,不能实例化一个Math类的对象
At the End"
4."以下代码中,如果test()方法抛出一个NullPointException异常时,打印输出什么内容?
class Example {
public static void main(String[] args) throws IOException {
try {
test();
System.out.println(""Inside Catch"");
}
System.out.println(""At the End"");

精编新版JAVASE综合考试题库188题(含参考答案)

精编新版JAVASE综合考试题库188题(含参考答案)

2020年JAVASE综合考试试题库188题[含答案]一、选择题1."给出以下代码,为了结果输出-12.0,方法method(d)应为以下哪个方法?public class Example {public static void main(String[] args) {double d = -11.1;double d1 = method(d);System.out.println(d1);}}"答案: AA.floor()B.ceil()C.round()D.abs()2.请问以下哪些关于try…catch…finally结构中的finally语句的描述是正确的?答案:CA.只有当一个catch语句获得执行后,finally语句才获得执行B.只有当catch语句未获得执行时,finally语句才获得执行C.如果有finally语句,return语句将在finally语句执行完毕后才会返回D.只有当异常抛出时,finally语句才获得执行3."关于以下代码,说法正确的是?class Example{public static void main(String[] args) throws IOException {if (args[0] == ""hello"") {throw new IOException();}}}"答案:AA.代码编译成功B.代码编译失败,因为main()方法是入口方法,不能抛出异常C.代码编译失败,因为IOException异常是系统异常,不能由应用程序抛出D.代码编译失败,因为字符串应该用equals方法判定一致性4."给出以下代码,执行结果是?。

(完整版)JavaSE测试题及答案

(完整版)JavaSE测试题及答案
a)class A extends B extends C
b)class A implements B implements C
c)class A implements B,C
d)class A extends B,C
4.在Java中,使用interface声明一个接口时,以下()可以用来修饰该接口。(一项)
c)java.util.Random类的nexInt()方法返回一个0(包括)和指定值之间(不包括)之间的值
d)执行代码:System.out.println(new java.util.Random().nextInt(10)+1);输出的值不可能为10.
19.在Java中,执行以下代码,两条输出语句的值分别是()(一项)
a)FileReade
b)ObjectOutputStream
c)Serialixable
d)DataOutputStream
18.在Java中,下列选项说法不正确的是()(一项)
a)jav.util.Random类用于生成随机数
b)java.util.Random类的nextInt()方法返回一个此随机生成的整数值
a)public interface A{
private int varA =10;
void methodA();
}
b)public abstract class B {
private int varA=10;
void methodA(){};
}
c)public interfacde C{
int varA =10;
sb.append(“Java”);
System.out.println(sb.toString());

精选新版JAVASE综合考核题库完整版188题(含参考答案)

精选新版JAVASE综合考核题库完整版188题(含参考答案)

2020年JAVASE综合考试试题库188题[含答案]一、选择题1.下列哪些项是泛型的优点?答案:AA.不用向下强制类型转换B.代码容易编写C.类型安全D.运行速度快2."现有如下代码:public class Example {public static void main(String[] args) {try {System.out.println(""before"");doRisyThing();System.out.println(""after"");} catch (Exception e) {System.out.println(""catch"");}System.out.println(""done"");}public static void doRisyThing() throws Exception{//this code returns unless it throws an Exception}}该代码可能的执行结果有哪些?"答案:A.before catchB.before after doneC.before catch doneD.before after catch3."下列代码的执行结果是?class Example {private void method1() throws Exception {throw new RuntimeException();}public void method2() {try {method1();} catch (RuntimeException e) {System.out.println(""Caught Runtime Exception"");} catch (Exception e) {System.out.println(""Caught Exception"");}}public static void main(String[] args) throws IOException {Example a = new Example();a.method2();}}"答案:A.代码编译失败B.输出Caught Runtime ExceptionC.输出Caught ExceptionD.输出Caught Runtime Exception和Caught Exception4.Java语言中异常的分类是哪项?答案:A.运行时异常和异常B.受检异常和非受检异常C.错误和异常D.错误和运行时异常5.下列关于Math类说法错误的是答案:ng.Math类是final类,因此不能被其他类继承ng.Math类的构造器是私有的,即声明为private,不能实例化一个Math类的对象ng.Math类上定义的所有常量和方法均是public和static的,因此可以直接通过类名调用D.min()和max()方法的参数之一,如果是NaN值,则方法将返回另一个参数值6.以下哪个方法用于计算平方根?答案:BA.squareRoot()B.sqrt()C.root()D.sqr()7.调用Math.random()方法最有可能输出以下哪些结果?答案:DA.-0.12和0.56E3B.0.12和1.1E1C.-23.45和0.0D.0.356和0.038."以下代码的输出结果是什么?public class Example {public static void main(String[] args) {System.out.println(Math.round(Float.MAX_V ALUE));}}"答案:BA.输出Integer.MAX_V ALUEB.输出一个最接近Float.MAX_V ALUE的整数C.编译失败D.运行时输出异常信息9."以下代码的运行结果是什么?public class Example {public static void main(String[] args) {System.out.println(Math.min(0.0, -0.0));}}"答案:CA.代码编译失败B.输出0.0C.输出-0.0D.代码编译成功,但运行时输出异常信息10."给出以下代码,为了结果输出-12.0,方法method(d)应为以下哪个方法?public class Example {public static void main(String[] args) {double d = -11.1;double d1 = method(d);System.out.println(d1);}}"答案: AA.floor()B.ceil()C.round()D.abs()11."现有:public class Example {public static void main(String[] args) {//插入代码处c.put(""X"", 123);}}下列哪些插入到插入代码处能够正常编译?"答案:A.Map c = new SortedMap();B.HashMap c = new HashMap();C.SortedMap c = new TreeMap();D.Map c = new LinkedHashMap();12."以下代码执行结果是?public class Example {public static void main(String[] args) {System.out.println(Math.min(Float.NaN, Float.POSITIVE_INFINITY));}}"答案:AA.输出NaNB.打印输出InfinityC.运行时异常,因为NaN不是有效的参数D.运行时异常,因为Infinity不是有效的参数13."以下代码中,如果test()方法抛出一个NullPointException异常时,打印输出什么内容?class Example {public static void main(String[] args) throws IOException {try {test();System.out.println(""Message1"");} catch (ArrayIndexOutOfBoundsException e) {System.out.println(""Message2"");}finally{System.out.println(""Message3"");}}}"答案:A.打印输出Message1B.打印输出Message2C.打印输出Message3D.以上都不对14.以下哪些是Collection接口的子接口?答案:BDA.DictionaryB.ListC.MapD.Set15.以下哪些有关Vector类的描述是正确的?答案:CA.该类是个public类B.该类是个final类C.该类实现了List接口D.该类可以序列化16.表示键值对概念的接口是哪项?答案:DA.SetB.ListC.CollectionD.Map17.创建一个只能存放String的泛型ArrayList的语句是哪项?答案:BA.ArrayList<int> al = new ArrayList<int>();B.ArrayList<String> al = new ArrayList<String>();C.ArrayList al = new ArrayList<String>();D.ArrayList<String> al = new List<String>();18."现有:list是一个合法的集合引用getCollection()返回一个合法集合的引用,以下语句哪些是合法的?" 答案:CA.for(Object o : list)B.for(Object o : getCollection())C.for(Object o : list.iterator())D.for(Iterator I;list.iterator();i.hasNext())19."现有:public class Example {public static void main(String[] args) {TreeSet<String> s = new TreeSet<String>();s.add(""one"");s.add(""two"");// 插入代码处for (String s2 : sorted) {System.out.print(s2 + "" "");}}}和四个代码片段:s1:SortedSet sorted = s.tailSet(s.first());s2:SortedSet<String> sorted = s.tailSet(s.first());s3:SortedSet sorted = (SortedSet)s.tailSet(s.first());s4:SortedSet sorted = (SortSet<String>)s.tailSet(s.first());分别插入到插入代码处,哪项可以编译?"答案:A.S2B.S2和S3C.S2和S4D.S2、S3和S420.以下哪些语句用于创建一个Map实例?答案: DA.Map m = new Map();B.Map m = new Map(init capacity,increment capacity);C.Map m = new Map(new Collection());D.以上都不对21."以下代码执行结果是?public class Example {public static void main(String[] args) {TreeMap<String, String> map = new TreeMap<String, String>();map.put(""one"", ""1"");map.put(""two"", ""2"");map.put(""three"", ""3"");displayMap(map);}static void displayMap(TreeMap map) {Collection<String> c = map.entrySet();Iterator<String> i = c.iterator();while (i.hasNext()) {Object o = i.next();System.out.print(o.toString());}}}"答案:A.onetwothreeB.123C.one=1three=3two=2D.onethreetwo22.以下说法错误的是?答案:CA.Java中接口不能被private或Protected修饰符修饰B.Java中一个类可以实现多个接口,但是只能继承一个父类C.接口中定义的成员变量,即使不说明,默认均是public\static\final的D.final\static\native关键字不能修饰接口,23."给出以下代码,请问在程序的第6行插入那条语句,改程序可依次打印输出11、10、9?1.public class Example {2. public static void main(String[] args) {3. double x[] = { 10.2, 9.1, 8.7 };4. int i[] = new int[3];5. for (int a = 0; a < x.length; a++) {6.7. System.out.println(i[a]);8. }9. }10.}"答案:CA.i[1] = ((int)Math.min(x[a]));B.i[1] = ((int)Math.max(x[a]));C.i[1] = ((int)Math.ceil(x[a]));D.i[1] = ((int)Math.floor(x[a]));24.以下哪些描述是正确的?答案:CDA.try语句块后必须至少存在一个catch语句块B.try语句块后可以存在不限数量的finally语句块C.try语句块后必须至少存在一个catch语句块或finally语句块D.如果catch和finally语句块同时存在,则catch语句块必须位于finally语句块前25.为了保证方法的线程安全,声明方法的时候必须使用哪个修饰符?答案:A.newB.transientC.voidD.synchronized26."现有以下代码:interface W {}class Z implements W {}class X extends Z {}class Y extends Z {}下列哪些代码段是正确的?"答案:A."X x=new X();Y y=new Y();Z z=new Z();y=(Y)x;"B."X x=new X();Y y=new Y();Z z=new Z();x=(X)y;"C."X x=new X();Y y=new Y();Z z=new Z();Z=(Z)x;"D."X x=new X();Y y=new Y();Z z=new Z();W w=(W)x;"27.Java语言中异常的分类是哪项?答案:CA.运行时异常和异常B.受检异常和非受检异常C.错误和异常D.错误和运行时异常28."现有代码:public class Example {public static void main(String[] args) {try {System.out.print(Integer.parseInt(""forty"")); } catch (RuntimeException e) {System.out.println(""Runtime"");}catch (NumberFormatException e) {System.out.println(""Number"");}}}执行结果是什么?"答案:CA.输出NumberB.输出RuntimeC.输出40D.编译失败29."对以下两个代码片段说法正确的是?代码片段1:int a = 3;int b = 0;int c = a / b;代码片段2:float a = 3.0f;float b = 0.0f;float c = a / b;"答案:CA.执行两端代码都会抛出异常B.执行两段代码都无异常抛出C.执行两段代码,只有代码片段1抛出异常D.执行两段代码,只有代码片段2抛出异常30."下列代码执行后的结果是?public class Example {public static void main(String[] args) {try {double x = 64.0;double y = 0.0;System.out.println(x % y);} catch (Exception e) {System.out.println(""Exception"");}}}"答案:DA.编译失败B.输出ExceptionC.输出InfinityD.输出NaN31.关于异常处理,说法错误的是?答案:CA.try…catch…finally结构中,必须有try语句块,catch语句块和finally语句块不是必须的,但至少要两者取其一B.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将子类放在后面,父类放在前面C.一个方法可以抛出多个异常,方法的返回值也能够是异常D.Throwable是所有异常的超类32.关于try…catch…finally结构,描述正确的是些?答案:ACA.可以有多个catchB.只能有一个catchC.可以没有catchD.finally必须有33."现有如下代码:public class Example {public static void main(String[] args) {try {int x=Integer.parseInt(""42a"");//插入代码处System.out.println(""oops"");}}}在插入代码处插入哪些语句可以在运行后输出oops?"答案:CA. } catch (IllegalArgumentException e) { (非法参数异常)B.} catch (IllegalStateException c) {C. } catch (NumbelFormatException n) {D.} catch (ClassCastException c) {34."关于以下代码正确的说法是:1.public class Example {2. int x = 0;3.4. public Example(int inVal) throws Exception {5. if (inVal != this.x) {6. throw new Exception(""Invalid input"");7. }8. }9.10. public static void main(String[] args) {11. Example t = new Example(4);12. }13.}"答案:A.代码在第1行编译错误B.代码在第4行编译错误C.代码在第6行编译错误D.代码在第11行编译错误35.以下哪些是catch语句能够捕获处理的异常?答案:ACA.ThrowableB.ErrorD.String36."以下代码执行结果是什么?class Example {public static String output = """";public static void foo(int i) {try {if (i == 1) {throw new Exception();}output += ""1"";} catch (Exception e) {output += ""2"";return;} finally {output += ""3"";}output += ""4"";}public static void main(String[] args) throws IOException { foo(0);foo(1);System.out.println(output);}}"答案:A.无内容输出B.代码编译失败C.输出13423D.输出1432337."请问以下代码的直接执行结果是?class Example{public static void main(String[] args) {try {System.out.println(args[0]);System.out.println(""I'm nomal"");if (true)return;} catch (Exception ex) {System.out.println(""I'm exception"");return;} finally {System.out.println(""I'm finally."");}System.out.println(""Out of try."");}}"答案:AA."I'm exceptionI'm finally."B.代码不能编译通过,因为最后一条语句位于return后,不可到达C.代码编译通过,但运行时输出异常信息D."I'm nomalI'm finally."38."下列代码的运行结果是?class Example {public static void main(String[] args) throws IOException {try {return;} finally{System.out.println(""Finally"");}}}"答案:BA.无内容输出B.输出FinallyC.代码编译失败D.输出异常信息39."现有代码如下:public class Example {void topGo() {try {middleGo();} catch (Exception e) {System.out.println(""catch"");}}void middleGo() throws Exception {go();System.out.println(""late middle""); }void go() throws Exception {throw new Exception();}public static void main(String[] args) { Example example = new Example(); example.topGo();}}该代码的执行结果是?"答案:BA.输出late middleB.输出catchC.输出late middle catchD.输出catch late middle40."如下代码执行后的输出结果是?public class Example {public static void main(String[] args) { try {throw new Exception();} catch (Exception e) {try {throw new Exception();} catch (Exception e2) {System.out.println(""inner"");}System.out.println(""middle"");}System.out.println(""out"");}}"答案:DA.inner outerB.middle outerC.inner middle outerD.编译失败41."现有如下代码:public class Example {public static void main(String[] args) {// anew Example().topGo();}void topGo() {// bmiddleGo();}void middleGo() {// cgo();System.out.println(""late middle"");}void go() {// dthrow new Exception();}}为了使代码能够编译通过,需要在哪个地方加入声明throws Exception?" 答案:BA.dB.c和dC.b、c和dD.a、b、c和d42."下面代码的执行结果是?class Example extends Utils {public static void main(String[] args) {try {System.out.print(new Example().getlnt(""42""));} catch (Exception e) {System.out.println(""Exc"");}}int getlnt(String arg) throws Exception {return Integer.parseInt(arg);}}class Utils {int getlnt() {return 42;}}"答案:BA.NFExcB.42C.42NFExcD.编译失败43.请问以下哪些关于try…catch…finally结构中的finally语句的描述是正确的?答案:CA.只有当一个catch语句获得执行后,finally语句才获得执行B.只有当catch语句未获得执行时,finally语句才获得执行C.如果有finally语句,return语句将在finally语句执行完毕后才会返回D.只有当异常抛出时,finally语句才获得执行44."关于以下代码,说法正确的是?class Example{public static void main(String[] args) throws IOException {if (args[0] == ""hello"") {throw new IOException();}}}"答案:AA.代码编译成功B.代码编译失败,因为main()方法是入口方法,不能抛出异常C.代码编译失败,因为IOException异常是系统异常,不能由应用程序抛出D.代码编译失败,因为字符串应该用equals方法判定一致性45."给出以下代码:class Example {public static void main(String[] args) throws IOException {try {methodA();} catch (IOException e) {System.out.println(""caught IOException"");}catch (Exception e) {System.out.println(""caught Exception"");}}如果methodA()方法抛出一个IOException异常,则该程序的运行结果是什么?" 答案:A.无内容输出B.代码编译失败C.输出caught IOExceptionD.输出caught Exception46.以下哪些类提供了创建一个目录的方法?答案:AA.FileB.DataOutputC.DirectoryD.FileDescriptor47."下列代码的执行结果是?class Example {public static void main(String[] args) throws IOException {int i = 1, j = 1;try {i++;j--;if (i == j) {j++;}} catch (ArithmeticException e) {System.out.println(0);} catch (ArrayIndexOutOfBoundsException e) {System.out.println(1);} catch (Exception e) {System.out.println(2);} finally {System.out.println(3);}System.out.println(4);}}"答案:CDA.输出1B.输出2C.输出3D.输出448."下列代码的执行结果是什么?public class Example {public static void main(String[] args) {int index = 1;int[] foo = new int[3];int bar = foo[index];int baz = bar + index;System.out.println(baz);}}"答案:BA.打印输出0B.打印输出1C.打印输出2D.运行期间有异常抛出49.下面哪个是包装器类型?答案:AA.IntegerB.intC.charD.double50."下列代码在JDK1.5以上版本执行的结果是?public class Example {public static void main(String[] args) {Integer i = 10;Integer j = 10;System.out.println(i == j);i = 210;j = 210;System.out.println(i == j); (超过-128~127为false) }}"答案:BA.抛出异常B.输出true falseC.输出true trueD.输出false false51.数组是什么类型?答案:AA.引用类型B.基本数据类型C.不能确定D.其他类型52.下面哪条语句不正确?答案:AA.int[4] a;B.int a[];C.int[] a;D.int[] a,b;53.下面哪条语句不正确?答案:CA.int[] a={1,2,3};B.int a[]=new int[4];C.int[] a=new int[];D.int[] a=new int[]{2,3,4};54.以下哪些是声明一个字符串数组的正确形式?答案:ABDA.String[] s;B.String []s;C.Sting [s]D.String s[]55.以下哪些语句正确?答案:ADA.double snow[] = new double[31];B.double snow[31] = new array[31];C.double snow[31] = new array;D.double[] snow = new double[31];56.以下哪些是初始化数组的正确形式?答案:ABDA.char c[] = {'a','b'};B.int []x[] = {{1,2,3},{1,2,3}};C.int x[3] = {1,2,3};D.int []x = {0,0,0};57.执行下列代码后,哪个结论是正确的 String[] s=new String[10]; 答案:DCA.s[10] 为 ""B.s[9] 为 nullC.s[0] 为未定义D.s.length 为1058."现有如下类型:a - java.util.Hashtableb - java.util.Listc - java.util.ArrayListd - java.util.SortedSet和定义:1-使用本接口,允许用户控制集合中每个元素的插入位置2-使用本集合,确保用户可以按照递增或元素的自然顺序遍历集合3-本具体类型允许空元素及基于索引的访问4-本集合是同步的哪一组匹配是对的?"答案:A.2描述d,3描述bB.1描述b,3描述cC.3描述a,4描述bD.4描述a,2描述c59."以下代码运行输出的结果是什么?public class Example {public static void main(String[] args) {char[] c = new char[100];System.out.println(c[50]);}}"答案:DA.打印输出50B.打印输出49C.打印输出\u0000D.打印输出null60.0.5和0.5f的以下说法正确的式?答案:BA.都是引用类型B.Double是引用类型,double是基本数据类型C.都是基本数据类型D.Double是基本数据类型,double是引用类型61."给出下面代码:public class Example{static int arr[] = new int[10];public static void main(String a[]){System.out.println(arr[1]);}}那个语句是正确的?"答案:DA.编译时将产生错误B.编译时正确,运行时将产生错误C.输出0D.输出null62."以下代码执行的结果是:public class Example {public static void main(String[] args) {int[] x = { 1, 2, 3 };x[1] = (x[1] > 1) ? x[2] : 0;System.out.println(x[1]);}}"答案:CA.输出1B.输出2C.输出3D.输出463.从InputStream对象中如何创建一个Reader对象?答案:A.使用InputStream类中定义的createReader()方法B.吃用Reader类中的createReader()方法C.构造一个InputStreamReader实例,将InputStream对象作为InputStreamReader类构造器D.构造一个OutputStreamReader实例,将InputStream对象作为OutputStreamReader类构造器的参数传入64."以下程序执行结果是?public class Example {public static void main(String[] args) throws IOException {String s = ""x,yy,123"";Scanner sc = new Scanner(s);while (sc.hasNext()) {System.out.println(sc.next() + "" "");}}}"答案:A.x yyB.x,yy,123C.x yy 123D.x,yy65.以下哪个描述是正确的?答案:A.多线程是Java语言独有的B.多线程需要多CPUC.多线程要求一个计算机拥有单独一个CPUD.Java语言支持多线程66.以下哪个是Runnable接口中定义的方法?答案:A.start()B.run()C.stop()D.yield()67."以下代码的执行结果是?public class Example implements Runnable {public static void main(String args[]) {Example ex = new Example();Thread t = new Thread(ex);t.start();}System.out.print(""pong"");}}"答案:A.输出pongB.运行时输出异常信息C.运行后无任何输出D.编译失败68.以下哪个关于Runnable的描述是正确的?答案:A.Runnable是Java语言的一个关键字,用于修饰类,来表明该类是一个独立线程B.Runnable是一个接口,实现该接口的类对象可以提供给Thread类构造器作为创建线程的依据C.Runnable是一个类,继承该类的子类可以作为独立的线程存在D.以上皆不对69.Java UDP编程主要用到的两个类型是答案:A.UDPSocketB.DatagramSocketC.UDPPacketD.DatagramPacket70."以下给出代码运行后的结果是?public class Example {public static void main(String[] args) {int[] refToArray = { 10, 11 };int var = 1;refToArray[var - 1] = var = 2;System.out.println(refToArray[0] + "" "" + refToArray[1]);}}"答案:CA.编译失败B.编译通过,但运行时提示异常C.2 11D.10 271.为了能够访问对封装的属性的访问和修改,方法往往用哪个修饰符修饰?答案:AA.publicB.protectedC.privateD.都可以72."以下代码的执行结果是?public class Example {public static void main(String[] args) {File f = new File(""c:\\large.txt"");}}"答案:rge.txt文件在本地硬盘上被创建B.在Unix系统上运行失败,因为路径分割符不正确rge.txt文件在本地硬盘上没有被创建D.如果large.txt文件已经存在,则一个异常被抛出73.以下说法正确的是()答案:A.RandomAccessFile类是File类的子类B.FileWriter类提供有操作基本数据类型的方法C.RandomAccessFile类提供有删除磁盘文件的方法D.File类提供有删除磁盘文件的方法74.现有int x = reader.read(),下列哪一项正确?答案:A.reader不是FileReader或者BufferedReader类型B.reader可以使FileReader或者BufferedReaderC.reader可以使FileReader类型,但不能使BufferedReader类型D.reader可以使BufferedReader类型,但不能使FileReader类型75."现有:String s = ""write a line to a file"";w.print(s + ""\n"");哪一个是对的?"答案:A.w既可以是PrintWriter类型,也可以是BufferedWriter类型B.w既不可以是PrintWriter类型,也不可以是BufferedWriter类型C.w可以是PrintWriter类型,但不可以是BufferedWriter类型D.w既可以是BufferedWriter类型,也可以是PrintWriter类型76.以下哪些是FileOutputSteram类的正确构造形式?答案:A.FileOutputStream(FileDescriptor fd)B.FileOutputStream(String n,boolean a)C.FileOutputStream(boolean a)D.FileOutputStream(File f)77.以下哪些是定义在java.io包中的抽象类?答案:A.InputStreamB.PrintStreamC.ReaderD.FileInputStream78.以下哪些描述是正确的?答案:A.Writer类可以使用不同的字符编码向输出流写入字符B.Writer类可以向输出流写入Unicode字符C.Writer类提供向输出流写入任意Java基本数据类型的方法D.Writer类提供向输出流写入引用数据类型的方法79.方法可以使用哪个访问权限修饰符?答案:DA.publicB.protectedC.privateD.都可以80.属性可以使用哪个访问权限修饰符?答案:CA.publicB.protectedC.privateD.都可以81."public class TestReplace {public static void stringReplace(String text){text=text.replace('j', 'i');}public static void bufferReplace(StringBuffer text){text=text.append(""C"");}public static void main(String[] args){String textString=new String(""java"");StringBuffer bufferString=new StringBuffer(""java"");stringReplace(textString);bufferReplace(bufferString);System.out.println(textString+bufferString);}}运行结果是?"答案:AA.javajavaCB.javaCjavaCC.javajavaD.javajavaCjava82.如果类中的成员变量只可以被同一包访问,则使用如下哪个约束符? 答案:CA. privateB.publicC.protectedD.no modifier83."以下程序运行的结果是:public class Example {public static void main(String[] args) {System.out.println(""String"".replace('g', 'G') == ""String"".replace('g','G')); System.out.println(""String"".replace('t', 't') == ""String"".replace('t','t')); }}"答案:CA.输出true trueB.输出true falseC.输出false falseD.输出false true84.以下哪些是关于完全封装的正确描述?答案:CA.所有的变量都是私有的B.所有的方法都是私有的C.只有通过提供的方法才能访问类属性D.通过方法和变量名均可访问属性85."执行下列语句后,变量i的值是:byte i = 127;i = i+ 2;"答案:-127A.0B.编译不能通过C.运行时抛出异常D.-12886.char类型的取值范围是?答案:A.0-2^16B.0-2^16-1C.-2^15-2^15D.0-2^15-187.以下哪个是10进制数123的正确的十六进制表示?答案:A.0x67B.0x123C.0x7BD.6788.以下哪个是10进制数124的正确的八进制表示?答案:A.0173B.0185C.0x185D.0x17389.下面哪个不是引用类型?答案:DA.StringB.DoubleC.FloatD.float90.下面哪个说法正确?A.基本数据类型都可以直接使用=赋值B.引用类型绝对不能直接用=赋值,都需要使用new关键字C.String不是引用类型D.char是引用类型91.Double和double分别是什么类型?答案:BA.都是引用类型B.Double是引用类型,double是基本数据类型C.都是基本数据类型D.Double是基本数据类型,double是引用类型92.0.3==0.3f的结果是?答案:BA.trueB.falseC.D.93."下列代码执行后的结果是?public class Example {public static void main(String[] args) {try {System.out.println(Float.NaN == Float.NaN);System.out.println(Float.POSITIVE_INFINITY==Float.POSITIVE_INFINITY); } catch (Exception e) {System.out.println(""Exception"");}}"答案:DA.输出+G20:J20false falseB.输出ExceptionC.输出true trueD.输出false true94.构造方法可以使用哪个访问权限修饰符?答案:AA.publicB.protectedC.private95.以下哪个语句实现了声明一个二维整数数组?答案:CA.int[]5[5] a = new int[][];B.int a = new int[5,5];C.int []a[] = new int[5][5];D.int[][] a = new [5]int[5];96."public class TestBlock {private int x;{System.out.println(""实例块"");}static{System.out.println(""静态块"");}public static void main(String[] args) {new TestBlock();new TestBlock();}}运行结果是?"答案:BA."静态块实例块"B."静态块实例块实例块"C."静态块"D."实例块"97."public class TestBlock {private int x;{System.out.println(""实例块"");}static{System.out.println(""静态块"");}public static void main(String[] args) {}}运行结果是?"答案:AA.静态块B.无输出C."静态块实例块"D.实例块98."对于以下代码,请问插入哪个语句可以访问到内部类InsideOne? public class Example {public static void main(String[] args) {EnclosingOne eo=new EnclosingOne();//插入语句处}}class EnclosingOne{public class InsideOne{}}"答案:A.InsideOne ei=new eo.InsideOne();B.InsideOne ei=EnclosingOne.new InsideOne();C.InsideOne ei=new EnclosingOne.InsideOne();D.EnclosingOne.InsideOne ei=eo.new InsideOne();99.有关匿名内部类的描述正确的是答案:A.匿名内部类没有显式构造器B.匿名内部类可以实现接口C.匿名内部类可以继承非final类D.匿名内部类可以同时实现接口和继承非final类100.以下哪些类型的变量可以被一个内部类访问?答案:A.所有static变量B.所有final变量C.所有的实例成员变量D.只有final静态变量101.使用哪个关键字导入其他包?答案:BA.includeB.importC.exportD.package102.哪个包可以不导入直接使用?答案:CA.java.ioB.java.utilngD.java.sql103.要使用com.chinasofti包下所有类,哪条语句正确?答案:BA.import *;B.import com.chinasofti.*C.import com.chinasofti;D.import *.*;104.类(外部类)可以使用哪个访问权限修饰符?答案:ABA.publicB.protectedC.privateD.default105."给出以下代码,假设arr数组中只包含正整数值,请问下列代码段实现了什么功能?public int guessWhat(int arr[]) {int x = 0;for (int i = 0; i < arr.length; i++) {x = x < arr[i] ? arr[i] : x;}return x;答案:AA.获取数组的最大索引值B.判断数组中是否存在重复元素C.获取数组中元素个数D.获取数组中的最大元素106.下面哪个选项正确?答案:AA.int[][] a=new int[2][];B.int[2][] a=new int[2][];C.int a[2][3]=new int[][];D.int a[][]={3,4,5};107.对象用什么操作符调用属性或方法?答案:AA..B.*C.xD.%108."以下代码的执行结果是?public class Example {public static void main(String[] args) {Element[] a1 = new Element[1];Element[][] a2 = new Element[2][1];Element[][][] a3 = new Element[3][3][3]; System.out.print(a3[2][2][2]);a1[0] = new Element();a2[0] = a2[1] = a1;a3[0] = a3[1] = a3[2] = a2;System.out.print(a3[2][2][2]);}}class Element {}"答案:DA.输出0B.输出nullC.编译不能通过D.运行时输出异常109.数组拷贝方法在哪个类中?答案:DA.ArrayB.StringC.自定义类D.System110."public class TestPass {String str = new String(""hello"");char[] ch = {'a','b','c'};public static void main(String[] args) {TestPass ex = new TestPass();ex.change(ex.str,ex.ch);System.out.print(ex.str + "" and "");System.out.print(ex.ch);}private void change(String str,char[] ch) {str = ""test ok"";ch[1] = 'g';}}程序运行结果?"答案:DA.hello and abcB.hello and agC.hello and acD.hello and agc111.表达式(short)10/10.2*2运算后结果是什么类型?答案:CA.shortB.intC.doubleD.float112."一下代码运行输出结果是?public class Example {public static void main(String[] args) {System.out.println(3.0/0);答案:DA.编译失败B.运行时抛出异常C.0D.打印输出Infinity113."以下代码的执行结果是:public class Example {public static void main(String[] args) {byte x = -64;byte y = -6;System.out.println(x / y + "" "" + x % y);}"答案:DA.编译失败B.运行时抛出异常C.10 4D.10 -4114.有int变量i的值为16384,1>>33的结果为?答案:BA.运算数不符合运算符要求B.0C.8192D.-1115."以下给出代码运行后的结果是?public class Example {public static void main(String[] args) {int x=1;int y=~x+1;System.out.println(x+"" ""+y);}}"答案:CA.打印输出-1 1B.打印输出1 1C.打印输出1 -1D.打印输出-1 -1116."给出以下代码,改程序的执行结果是?interface Base {int k = 0;}public class Example implements Base {public static void main(String[] args) {int i;Example exm = new Example();i = exm.k;i = Example.k;i = Base.k;System.out.println(i);}}"答案:DA.无内容输出B.代码编译失败C.代码运行时输出异常信息D.打印输出0117.下面哪个是正确的二维数组声明?答案:DA.int[] a;B.int[2][] a;C.int a[2][3];D.int[][] a;118.Java类的属性,不能用哪个修饰符?答案:DA.publicB.protectedC.privateD.都可以119.java文件编译后,将生成什么文件?答案:CA.dllB.jarC.classD.doc。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、单选1、(1分)下列描述中,错误的是( A )。

A.Java语言的性能要比C语言差B.Java能够实现一次编写,处处运行C.Java是一种面向对象的编程语言D.Java有多线程机制2、下列不属于java语言特点的是(B )A.自动垃圾回收机制B.面向过程的编程语言C.跨平台特性D.去除了难理解的指针等概念3、下列不是虚拟机执行过程特点的是( A )A.单线程B.多线程C.动态链接D.异常处理4、(2分)阅读下列代码,选出该代码段正确的文件名(B )。

class A{void method1(){System.out.println("Method1 in class A");}}public class B{void method2(){System.out.println("Method2 in class B");}public static void main(String[] args){System.out.println("main() in class B");}}A: A.java B:A.class C: B.java D: B.class5、结构化程序设计所规定的三种基本控制结构是(C )A、输入.处理.输出B、树形.网形.函数C、顺序.选择.循环D、主程序.之程序.函数6、下面为数组初始化正确的写法是( d ):A、double c[] = new double[]{1,2}B、double c[] = new double{1,2}C、double c[] = new double[](1,2)D、double c[] = new double(1,2)7、(2分):下面不属于java类中的类修饰符的是(C ):A. publicB. finalC. extendsD. abstract8、下列描述中,错误的是(A )A、java要求编程者管理内存B、对象是类的一个实例C、类是一个抽象D、java有多线程机制9、(2分): 不论循环条件判断的结果是什么, ( B )循环将至少执行一次。

A.whileB.do-whileC.forD. 以上都不是10、下列描述中,错误的是( A)A、java要求编程者管理内存B、对象是类的一个实例C、类是一个抽象D、java有多线程机制11、(1分):下面关于for-each循环说法不正确的是:( D )A、JDK1.5之后才提供了for-each循环B、使用for-each循环遍历数组时,无须获得数组长度。

C、使用for-each循环遍历数组时,无须根据索引来访问数组元素。

D、以上说法都不正确12、以下哪一项不是File类的功能( B )A)创建文件 B)创建目录 C)删除文件 D)拷贝文件13、下列程序test类中的变量c的最后结果为( D )public class test{public static void main(String args[]){int a=10;int b;int c;if(a>50){b=9;}c=b+a;}}A、10B、0C、19D、编译出错15、那么下列说法正确的是:( -------- )A:程序运行结果为”有参”;B:程序编译错误,不能运行C:程序运行结果为“name”;D:程序能编译,但是没有输出结果16、如下代码:for(int i = 0;i<2;i++){System.out.println("hello");}循环会执行( C )次:A、0B、1C、2D、317、下列语句中不正确的一个是( D )。

(A)float f = 1.1f; (B)byte b = 128;(C)double d = 1.1/0.0; (D)char c = (char)1.1f;18、对于while(循环条件){循环体}循环,在每次执行循环之前,都先对循环条件求值,如果循环条件为( A )则运行循环体部分。

A、trueB、falseC、1D、019、2.下列对于continue的作用描述正确的是( B ):A、continue用于强行终止循环,跳出循环体B、continue用于终止本次循环,接着会开始下次循环C、continue不仅能终止循环,还能终止循环语句之外的语句的执行D、continue不能终止任何循环二、多选。

1、对于while(循环条件){循环体}循环,下面选项说法正确的是( AD ):A、循环条件为true,执行循环体B、循环条件为true,不执行循环体C、循环条件为false,执行循环体D、循环条件为false,不执行循环体2、int 和 Integer 的区别是?(ABC )A、Int是java的原始数据类型,Integer是java为int提供的封装类。

B、引用类型和原始类型的行为完全不同,并且它们具有不同的语义。

C、引用类型和原始类型具有不同的特征和用法。

D、Integer是java的原始数据类型,Intager是java为int提供的封装类。

3、下面哪些选项那些可以用作变量名的首字符?( A )A. 字母B. 下划线(_)C. 数字D. 美圆符号($)4、现有1个char类型的变量c1=66和1个整型变量i=2,当执行c1=c1+i;语句后,c1的值可以为( D )。

(A)'d' (B)'D' (C)68 (D)语句在编译时出错5、编译运行以下程序后,关于输出结果的说明不正确的是(ABD )public class Test{public static void main(String args[ ]){int x=8;System.out.println(“value is “+ ((x>5) ? ">0":“<0”));}}A.输出结果为:<0 B.输出结果为:value is “>0”C.输出结果为:value is >0 D.编译错误6、下面为数组初始化正确的写法是(AB ):A、int[] b = new int[]{1,2}B、int[] b = {1,2}C、int[] b = new int[](1,2)D、int[] b = new int(1,2);7、(2分)下列代码的可能输出结果( ABC )public class Person{static String arr[] = new String[5];public static void main(String a[]) {arr[1] = “2”;arr[4]=”0”;for(int i=0;i<arr.length;i++)System.out.print(arr[i]);}}A、输出nullB、2C、0D、运行时将产生错误8、以下哪项属于面向对象的特征(BCD )A、跨平台B、继承C、封装D、多态性9、for循环中能嵌套哪些循环(ABC ):A、for循环B、while循环C、do while循环D、不能嵌套任何循环10.(2分)下列属于关于面向对象的特点的是(BCD ):A)多线程;B)封装;C)继承;D)多态11.下列属于数值型数据的是(ABCD)A、byteB、shortC、intD、long12、下列Java语句中,正确的项是(ABCD)。

(A)int b = 10; (B)char c='a';(C)float e = 32; (D)char d=65;13、现有1个char类型的变量c1=66和1个整型变量i=2,当执行c1=c1+i;语句后,c1的值可以为( BC )。

(A)'d' (B)'D' (C)68 (D)语句在编译时出错14、下列关于运算符优先级的说法中,正确的一个是(ABD )(A)运算符按照优先级顺序表进行运算(B)同一优先级的运算符在表达式中都是按照从左到右的顺序进行运算的(C)同一优先级的运算符在表达式中都是按照从右到左的顺序进行运算的(D)括号可以改变运算的优先次序15、在下面程序中,变量i可以使用的数据类型是:( BD )switch (i) {default:System.out.println(“Hello”);}A.charB.byteC.floatD.intE.object16、(2分)下列代码的可能输出结果( A )public class Person{static String arr[] = new String[5];public static void main(String a[]) {arr[1] = “2”;arr[4]=”0”; for(int i=0;i<arr.length;i++)System.out.print(arr[i]);}} A、输出null B、2 C、0 D、运行时将产生错误三、填空。

1.表达式5&2的值为 0 。

3.如果想让hello在控制台中打印3次,则count的值应该为 24、假设i=10, j=20, k=30,则表达式 !(i<j+k) || !(i+10<=j) 的值为 __false___ 。

5、在Java语言的基本数据类型中,占存储空间最少的类型是 byte ,该类型占用的存储空间为 __1__ 位。

6、有如下代码,请填写input的类型:Scanner sc = new Scanner(System.in);____String___ input = sc.next();7.有如下代码,请填写方法名:Scanner sc = new Scanner(System.in);int input = sc.__nextInt_____();8、如下代码:int b[] = new int[3];如果想为数组b的第二个元素赋值为3,则b[ 1 ] = 3;9.、一个完整的Java应用程序由一个或多个类组成;其中Java Application至少有一个主类,这个类中包含一个名为 main 的方法。

10.保留字中属于循环语句的是 for 和 while 。

相关文档
最新文档