提示:内容已经过期谨慎付费,点击上方查看最新答案

走进JAVA编程

  1. 事件处理机制能够让界面响应用户操作,主要包括_______。 ( )

  2. A:事件 B:事件源 C:其他三项都是 D:事件处理
    答案:对AI参考:正确答案是D:事件处理。事件处理机制能够让界面响应用户操作,主要包括事件处理。事件处理是当用户在界面上执行某个操作时,程序能够识别并响应这个操作的过程。事件处理机制通常包括事件源、事件和事件处理程序三个部分。事件源是指用户操作的界面对象,事件是指用户执行的操作,事件处理程序是指程序中用来响应事件的代码。因此,选项D是正确答案。选项A和B并不是事件处理机制的组成部分,选项C也不是最准确的选择。'
  3. 如有下列代码:
    public class MyRunnable implements Runnable {
    public void run() {
    ......
    }
    }
    下列那行代码可以创建并启动线程________。( )

  4. A:new Runnable(MyRunnable).start(); B:new Thread(new MyRunnable()).start(); C:new MyRunnable().start(); D:new Thread(MyRunnable).run();
    答案:输出为 false
  5. 下列________不是Thread类提供的有关线程优先级的静态属性。( )

  6. A:DEFAULT_PRIORITY B:MIN_PRIORITY C:MAX_PRIORITY D:NORM_PRIORITY
    答案:NORM_PRIORITAI参考:正确选项是:D:NORM_PRIORITY 。Thread类中提供的有关线程优先级的静态属性有DEFAULT_PRIORITY、MIN_PRIORITY和MAX_PRIORITY,而NORM_PRIORITY不是其中之一。NORM_PRIORITY是Java 1.6版本中新增的常量,用于表示默认的线程优先级。'
  7. 有关普通变量和引用变量的说法中,错误的是_________。 ( )

  8. A:普通变量可以将基本类型数据直接保存在所分配的存储空间中 B:引用变量默认初始化为0 C:当引用变量没有和任何对象建立连接时,对象将无法访问 D:引用变量并不保存对象本身,而是保存对象的内存首地址或操作句柄
    答案:引用变量默认初始化为0
  9. 已知int[] a = new int[100]; ,在下列给出的数组元素中,非法的是________。 ( )

  10. A:a[99] B:a[0] C:a[1] D:a[100]
    答案:Func(ref a)AI参考:在Java中,数组的索引是从0开始的。所以非法的是选项D,a[100]。这个索引超出了数组的范围,因为数组的大小是固定的,只有100个元素,所以最大的索引只能是99。因此,正确答案是D:a[100]。'
  11. import java.util.*;
    public class Test{
    public static void main(String args[]){
    ArrayList<String> str = new ArrayList<String>();
    str.add(""aAaA"");
    str.add(""AaA"");
    str.add(""aAa"");
    str.add(""AAaa"");
    Collections.sort(str);
    for(String s:str)
    System.out.print(s+"" "");
    }
    }
    以上程序的运行结果是 ( ) 。

  12. A:aAa aAaA AaA AAaa B:aAa AaA AAaa aAaA C:AaA AAaa aAa aAaA D:AAaa AaA aAa aAaA

  13. 数据存放对顺序没有要求且不允许重复 , 应该首先选择 ( ) 类。

  14. A:ArrayList B:HashSet C:HashMap D:LinkedList
    AI参考:正确答案是B:HashSet。HashSet是一个不允许重复的集合,它使用哈希表实现,数据存放对顺序没有要求。因此,如果需要一个不允许重复且对顺序没有要求的集合,应该选择HashSet。ArrayList、HashMap和LinkedList都不符合要求。ArrayList是一个动态数组,可以存储任何类型的对象,但不允许重复;HashMap是一个键值对的映射,对顺序也没有要求;LinkedList是一个双向链表,主要用于存储元素,但也不允许重复。因此,答案为B。'
  15. Java中类ObjectOutputStream支持对象的写操作,这是一种字节流,它的直接父类是________。 ( )

  16. A:ObjectOutput B:Writer C:OutputStream D:DataOutput

  17. import java.io.*;
    public class Example {
    public static void main(String args[]){
    Mine m = new Mine();
    System.out.print(m.amethod());
    }
    public int amethod() {
    try {
    FileInputStream dis = new FileInputStream(""Hello.txt"");
    } catch (FileNotFoundException fne) {
    System.out.print(""No such file found"");
    return -1;
    } catch(IOException ioe) {
    } finally{
    System.out.print(""Doing finally"");
    }
    return 0;
    }
    }
    如果在当前文件目录下没有“Hello.txt”文件存在,上列程序编译运行后结果是________。( )

  18. A:0 B:No such file found-1 C:No such file foundDoing finally-1 D:No such file found

  19. 下列数据流中,属于输入流的是________。( )

  20. A:从内存流向硬盘的数据流 B:从键盘流向显示器的数据流 C:从网络流向显示器的数据流 D:从键盘流向内存的数据流
    AI参考:答案:D解析:数据流可以分为三种类型:输出流、输入流和通信流。输入流指的是数据从文件或程序外部环境传输到计算机系统内部的过程;输出流则指数据从计算机内部传送到文件或程序外部环境的过程;通信流指通过网络发送和接收的数据流和报文流。A项是内存流向硬盘,是输出流;B项是键盘流向显示器,属于输出流;C项是网络流向显示器,属于通信流。而D项从键盘流向内存,则是输入流。所以答案选择D项。'
  21. 下列哪个赋值语句是不正确的________。 ( )

  22. A:float d = 3.14f ; B:float f = 11.1; C:double d = 5.3E12; D:double f=11.1E10f;
    AI参考:选项C: double d = 5.3E12; 是错误的。在C语言中,浮点数类型的变量只能存储有限的小数位,如果需要存储更大的数值,应该使用双精度浮点数(double)类型。而选项C中使用了科学计数法表示的数值5.3E12,这并不符合浮点数的存储方式,所以会出错。选项A、B、D中的赋值语句都是正确的,因为它们使用了正确的格式化方式来表示浮点数。因此,正确答案是C。'
  23. 创建一个有“取消”文本的按钮,其语句是_______。( )

  24. A:JLabel=newJLabel("取消"); B:JTextField=newJTextField("取消"); C:JButton=newJButton("取消"); D:JCheckbox=newJCheckbox("取消");
    AI参考:正确选项是:C:JButton=newJButton("取消");在Java中,创建一个有“取消”文本的按钮,需要使用JButton类并为其指定按钮文本,即"取消"。其他选项中的JLabel是标签类,用于显示文本或图形;JTextField是文本框类,用于输入文本;JCheckbox是复选框类,用于用户可以选择或取消选择。因此,正确答案为C选项,即"JButton=new JButton("取消");"。'
  25. 下面有关Java程序的main方法的说法中,正确的是___________。 ( )

  26. A:main方法通常用public、static和void进行修饰,也可以不用 B:main方法定义在主类中,任何Java程序有且仅有一个主类 C:main方法是程序运行的起点,每个类中都必须包含一个main方法 D:一个Java程序必须包含一个main方法
    AI参考:有关Java程序的main方法的说法中,正确的是:一个Java程序必须包含一个main方法。选项A和B是错误的,因为main方法可以不用public、static和void进行修饰,也可以不在主类中,可以有多个主类。选项C也是错误的,因为并不是每个类中都必须包含一个main方法,可以根据需要添加其他方法。只有选项D是正确的,因为Java程序必须包含一个主方法,作为程序的入口点。'
  27. 若顶层类为Outer,内部类为Inner,则编译后,对应内部类的字节码文件为________。 ( )

  28. A:包含在Outer.class中 B:Outer$Inner.class C:Inner.class D:Outer.Inner.class

  29. 如果数据存放对顺序有要求,应该首先选择 ( ) 类。

  30. A:LinkedList B:ArrayList C:HashMap D:HashSet

  31. 用于将Java程序编译成字节码文件的工具是_______。 ( )

  32. A:javadoc.exe B:java.exe C:javac.exe D:appletviewer.exe

  33. 下面可以创建一个新目录的是________类。 ( )

  34. A:RandomAccessFile B:FileOutputStream C:FileInputStream D:File
    AI参考:在Java中,我们可以使用File类来创建新的目录。这个类代表一个文件或目录路径对象,并提供了用于执行与文件系统操作相关的各种方法。其他选项中,RandomAccessFile用于读写随机访问文件,FileOutputStream用于写入文件,FileInputStream用于读取文件,这三个选项都不能用来创建新的目录。因此,答案是D:File。'
  35. 下列几种类型的对象中,不能作为异常对象被抛出的是 () 。 ( )

  36. A:String B:Exception C:Error D:RuntimeException
    AI参考:根据Java语言规范,可以作为异常对象抛出的应该是实现了`Throwable`接口或其子接口(如`Exception`、`RuntimeException`)的对象。因此,选项B:Exception、D:RuntimeException是可以作为异常对象抛出的。而选项A:String 和选项C:Error都不是实现`Throwable`接口或其子接口的对象,因此不能作为异常对象抛出。所以,正确答案应该是选项C:Error。'
  37. 要在不创建对象的情况下,访问某个类的成员方法,需用______关键字修饰该方法。 ( )

  38. A:class B:void C:public D:static
    AI参考:正确选项是D:static。要在不创建对象的情况下访问某个类的成员方法,需要使用static关键字修饰该方法。static方法属于类本身,而不是类的实例,因此可以在不创建对象的情况下直接调用。其他选项不符合题意。'
  39. 关于带资源的try语句(try-with-resource),以下描述不正确的是()。 ( )

  40. A:带资源的try语句要求资源对象类型实现AutoCloseable接口 B:当try块抛出异常时,带资源的try语句不能自动关闭资源 C:带资源的try语句一般比带finally的try语句代码更为简洁 D:try (…)在括号内声明并初始化资源
    AI参考:不正确的是B:当try块抛出异常时,带资源的try语句不能自动关闭资源。在Java中,使用try-with-resources语句可以自动管理资源对象的关闭,当try块执行完毕或者发生异常时,资源对象会自动关闭。因此,选项B描述不正确。其他选项A、C、D都是关于带资源的try语句的正确描述。A选项说明资源对象类型需要实现AutoCloseable接口,这是Java 7中引入的新特性,用于自动关闭可关闭资源。C选项说明带资源的try语句通常比带finally的try语句更简洁。D选项描述了在括号内声明并初始化资源的方式。'
  41. Java语言正式发布于_______年。( )

  42. A:1995 B:1991 C:1998 D:1996
    AI参考:Java语言正式发布于______年。(A):1995。Java是由Sun Microsystems公司开发的编程语言,于1995年由James Gosling首次发布。因此,答案为A:1995。'
  43. addActionListener(this)方法中的this参数表示的意思是_______。 ( )

  44. A:当有事件发生时,应该使用this监听器 B:this 事件优先于其他事件 C:当前对象会处理此事件。 D:其他三项说法都不正确

  45. 对于catch子句的排列,下列哪种是正确的 () 。 ( )

  46. A:子类异常在先,父类异常在后 B:子类异常和父类异常可以任意先后顺序 C:有继承关系的异常不能在同一个try程序段内 D:父类异常在先,子类异常在后

  47. 下列________是不能通过编译的语句。 ( )

  48. A:float f1 =45.0f; B:double d = 545.0; C:int i = 321; D:char a1 = "c";
    AI参考:正确答案是D:char a1 = "c";。char类型是一种字符型变量,只能存储单个字符,不能存储字符串,因此选项D中的语句“char a1 = "c";”是不能通过编译的。其他选项中的语句都是合法的,其中A和B是合法的浮点数和双精度数赋值语句,C是合法的整数赋值语句。'
  49. 如果一个类的定义中没有出现extends关键字,则表明这个类________。 ( )

  50. A:不能创建对象 B:没有父类 C:派生于Object类 D:可以单独使用

  51. 程序段“for(int i=0; i<=3; ++i){System.out.print("a");}”,输出语句共执行________次。( )

  52. A:1 B:4 C:3 D:2

  53. 关于断言,以下说法正确的是 () 。 ( )

  54. A:Java默认启用断言,可以使用-ea选项禁止执行assert语句。 B:assert断言语句检查条件满足时抛出AssertionError。 C:Java中使用assert断言语句检查条件是否满足。 D:assert Expression1 : Expression2 ; 语句形式一次性检查两个表达式值是否为true。
    AI参考:选项C:Java中使用assert断言语句检查条件是否满足,是正确的。断言(assert)是Java中的一个内建特性,它用于在编译时检查条件是否为真。如果断言的条件为假,那么程序会抛出AssertionError异常。断言语句通常用于调试,可以帮助开发者找出程序中的错误。选项A和D都是错误的,因为断言语句默认启用,不需要使用-ea选项来禁止执行。选项B也是不准确的,因为当断言条件为假时,会抛出AssertionError异常,而不是继续运行程序。选项D中提到的一次性检查两个表达式值是否为true,这可能存在歧义,因为在Java中断言语句只能检查一个表达式是否为真。因此,正确答案为选项C。'
  55. for(int i=1;i<4;i++);
    System.out.print(i+"" "");"
    上列程序的输出结果是:________。( )

  56. A:编译出错 B:4 C:1 2 3 4 D:1 2 3
    AI参考:正确答案是D:1 2 3。代码中for循环的结束条件是i<4,因此循环体只会执行三次,输出i的值1、2、3,中间用空格隔开。所以答案是D。'
  57. 下列哪条语句表示将一个按钮对象b1加入到面板p1中_______。 ( )

  58. A:b1.add("p1") B:b1.add(p1) C:p1.add(b1) D:p1.add("b1")
    AI参考:选项C:p1.add(b1) 表示将一个按钮对象b1加入到面板p1中。解释:在Java中,面板(Panel)是一个容器,可以容纳其他组件(如按钮、文本框等)。add()方法是用于向容器中添加组件的方法。选项A和D中,"b1.add("p1")"和"p1.add("b1")"中的括号内内容需要为字符串或引用类型,但题目中没有给出具体信息,因此这两个选项无法确定。选项B中"b1.add(p1)"的语法是错误的,因为不能直接将一个对象添加到另一个对象中。因此,选项C "p1.add(b1)" 是正确的,它表示将按钮对象b1添加到面板p1中。'
  59. 下列Swing组件中,属于中间容器的一项是_______。 ( )

  60. A:JFrame B:JLabel C:JButton D:JPanel
    AI参考:正确选项是D:JPanel。JPanel是Swing中的一个组件,它是一个中间容器,可以包含其他Swing组件,如JLabel、JButton等。而JFrame是顶层容器,用于显示窗口,不能包含其他组件。JLabel是一个标签组件,用于显示文本或图像。JButton是一个按钮组件,用于触发事件。因此,D选项是正确答案。'
  61. grid[9][5][3]描述的是________。 ( )

  62. A:九维数组 B:一维数组 C:三维数组 D:五维数组

  63. 在容器中的各组件采用网格布局,平均占据容器空间的是_______。 ( )

  64. A:CardLayout B:GridLayout C:FlowLayout D:BorderLayout
    AI参考:正确选项是B:GridLayout。GridLayout是一种在容器中按照网格布局的方式,将组件平均分配到容器中,每个组件占据一个网格单元,因此平均占据容器空间。而CardLayout、FlowLayout和BorderLayout都不是在容器中平均分配组件的布局方式。因此,正确答案为B。'
  65. public class Example{
    public Boolean flags[] = new Boolean[4];
    public static void main(String[] args) {
    Example E = new Example();
    System.out.println(""Flag 1 is "" + E.flags[1]);
    }
    }
    上列程序运行的结果是________。( )

  66. A:Flag 1 is null B:Flag 1 is true C:Flag 1 is flase D:编译出错
    AI参考:根据题目中的代码,`Example E = new Example();` 创建了一个 `Example` 类的对象 `E`,并且这个对象有一个布尔类型的数组 `flags`,数组长度为4。在 `main` 方法中,直接访问了这个数组的第二个元素 `E.flags[1]`,但是由于这个元素的值在声明时并未被初始化,所以其默认值为 `false`。所以,输出结果应该是 "Flag 1 is false"。因此,正确选项是 C:Flag 1 is flase。'
  67. 当一个Java程序中要使用到多个类时,错误的做法是______。 ( )

  68. A:可以将多个类放在同一个文件中,访问权限不定 B:可以将每个类放在单独的文件中,访问权限不定 C:可以将多个类放在同一个文件中,但只能有一个类定义为public D:每个文件中的类个数不定,但每个文件只能有一个public类

  69. 下列不属于容器的是_______。 ( )

  70. A:JWindow B:JPanel C:JToolBar D:JProgressBar
    AI参考:选项D:JProgressBar不属于容器。容器通常指的是Java的Swing库中的一些组件,如JFrame、JWindow、JPanel等,它们可以容纳其他组件并提供了布局和管理的功能。而JProgressBar是一个简单的进度条组件,它本身不具有容纳其他组件的功能,因此不属于容器。'
  71. Object是Java程序中所有类的直接或间接父类,处在类层次的最高点。( )

  72. A:错 B:对

  73. 在嵌套循环中,内层循环和外层循环不能交叉。( )

  74. A:对 B:错

  75. 接口和类一样,可以直接用来创建对象。( )

  76. A:错 B:对
    AI参考:答案:B。接口是一种规范,它定义了类或类与类之间的行为方式,但是它本身是不能直接创建对象的。只有类可以实现接口,并且通过类名创建对象后才能调用接口中定义的方法。因此,这个题目的正确答案是B,接口不能直接用来创建对象。'
  77. Java 语言并没有真正的多维数组,只有数组的数组。如果n-1维数组的元素仍为一维数组,那么就构成了n维数组。( )

  78. A:错 B:对
    AI参考:答案是B:对。Java语言确实没有真正的多维数组,只有数组的数组。但是,如果一个数组的元素本身也是数组,那么这个数组就可以被认为是多维数组的一部分。因此,如果n-1维数组的元素仍为一维数组,那么就构成了n维数组。这个描述是准确的。'
  79. try块可以没有对应的finally块,但至少要有一个catch 块与之相对应。( )

  80. A:对 B:错
    AI参考:答案是A:对。在Java等一些编程语言中,try块可以没有对应的finally块,但至少要有一个catch块与之相对应。try块用于捕获可能出现的异常,而catch块用于处理这些异常。如果没有catch块,那么任何异常都可能被忽略,这可能会导致程序崩溃或出现未定义的行为。因此,至少需要一个catch块来处理可能出现的异常。但是,是否需要finally块取决于具体的程序需求。'
  81. 用new关键字建立一个线程对象后,该线程对象就处于新生状态。( )

  82. A:对 B:错
    AI参考:答案是B:错。使用new关键字创建一个线程对象后,该线程对象只是处于新建状态,还没有启动执行。要使线程对象真正开始执行,需要调用其start()方法。因此,该判断题是错误的。'
  83. 表达式Math.rint(9.99)的值为9。( )

  84. A:错 B:对
    AI参考:答案:B:对。Math.rint()函数用于将一个浮点数四舍五入到最接近的整数,因此表达式Math.rint(9.99)的值为9。'
  85. 包是类的容器,用于分隔类名空间,避免类名冲突。( )

  86. A:错 B:对

  87. java. io包提供了File类,利用File类对象可以方便地对文件或目录进行操作管理。但是,它不能读/写文件。( )

  88. A:对 B:错
    AI参考:正确答案是B:错。Java.io包提供了File类,利用File类对象可以方便地对文件或目录进行操作管理。File类提供了许多方法,如新建文件、删除文件、重命名文件、复制文件等。此外,File类还提供了输入/输出流,允许读取和写入文件。因此,这个说法是错误的。所以答案是B:错。'
  89. 数组要经过声明、分配内存及赋值后,才能被使用。( )

  90. A:错 B:对

  91. 静态方法不能被重写。( )

  92. A:对 B:错
    AI参考:答案是B:错。静态方法是一种特殊的方法,它在类中定义,而不是在对象中。静态方法只能被声明为静态方法的方法重写(override),而不能被重写(overridden)。因此,这个判断题是错误的。'
  93. 如果数据存放对顺序没有要求,首先选择HashSet类。( )

  94. A:错 B:对

  95. 程序运行时抛出异常,但没有任何方法捕获处理该异常,则由JVM缺省处理。( )

  96. A:对 B:错
    AI参考:正确答案是B:错。程序运行时抛出异常,如果没有任何方法捕获处理该异常,将会导致程序异常终止,并由JVM缺省处理是指程序异常终止后由JVM执行一些默认的清理操作,如关闭未关闭的文件、释放资源等,但并不会影响程序的正常运行。因此,选项B是错误的。'
  97. 集合Set是通过键-值对的方式来存储对象的。( )

  98. A:对 B:错

  99. 类是对象的模板,对象是类的实例。( )

  100. A:对 B:错
    AI参考:答案是A:对。类是对象的模板,表示一类事物的抽象概念,具有共同的特征和属性。对象是类的实例,表示具体的事物,具有类的属性和行为。因此,类和对象是相互关联的,类是对象的模板,对象是类的实例。'
  101. 字节流用于处理二进制文件,字符流用于处理文本文件。( )

  102. A:对 B:错

  103. 方法执行时可能抛出受检查异常,则方法声明中必须声明抛出异常。( )

  104. A:对 B:错

  105. 在while循环中,循环体有可能一次也不执行。( )

  106. A:对 B:错
    AI参考:答案是B:错。在while循环中,如果循环条件一开始就是假的,那么循环体一次也不会执行。所以这个判断题是错误的。'
  107. Thread.sleep()方法调用后,当等待时间未到,该线程所处状态为阻塞状态。当等待时间已到,该线程所处状态为运行状态。( )

  108. A:对 B:错

  109. Java中的数组是用来表示一组同类型数据的数据结构,且数组是定长的,初始化以后,数组的大小不会再动态变化。( )

  110. A:对 B:错

  111. Java系统预先定义了3个对象in、out和err,分别表示标准输入设备、标准输出设备和标准错误设备。( )

  112. A:错 B:对
    AI参考:正确选项为B:对。在Java系统中,确实预先定义了三个对象:in、out和err,分别表示标准输入设备、标准输出设备和标准错误设备。这三个对象通常用于与标准输入流、标准输出流和标准错误流进行交互。在Java程序中,可以使用这些对象来读取输入数据、向控制台输出数据以及处理错误信息。因此,这个说法是正确的。'
  113. 一个程序中可以混合使用多种布局策略。( )

  114. A:错 B:对

  115. ArrayList类主要用于对数组进行操作。( )

  116. A:对 B:错
    AI参考:答案是B:错。ArrayList类主要用于对列表进行操作,而不是数组。它提供了一些方便的方法来操作列表中的元素,如添加、删除、查找等。因此,这个判断题是错误的。'
  117. Java. io包中为不同的数据源提供了不同的流类。每一种流都有输入流和输出流两个类。( )

  118. A:错 B:对
    AI参考:正确答案是B:对。Java.io包中为不同的数据源提供了不同的流类,包括输入流和输出流两个类,这些流类可以帮助程序在不同的数据源之间进行数据的输入和输出操作。因此,这个判断题的答案是B:对。'
  119. 如果数据存放对顺序有要求,首先选择 ArrayList类。( )

  120. A:对 B:错

  121. Java对逻辑与(&&)和逻辑或(||)提供了短路操作功能。 ( )

  122. A:错 B:对

  123. 接口与类一样,本身也有数据成员和方法,但数据成员一定要赋初值,且此值将不能再更改,而方法必须是抽象方法。( )

  124. A:错 B:对

  125. 程序段int x=0;if(x){} 是正确的。( )

  126. A:对 B:错
    AI参考:答案是B:错。在C++中,if语句的条件表达式应该使用关系运算符(如>、<、==、!=等)或逻辑运算符(如&&、||等)来比较两个值的大小或是否为真。而题目中的条件表达式“x”是未定义的,会导致编译错误。正确的写法应该是“if(x != 0) {}”或“if(x == 0) {}”等。'
  127. 使用boolean[] b = new boolean[3];语句创建数组后,b[0]的值为true。( )

  128. A:对 B:错

  129. 在Java中,null关键字和0的含义是一样的。( )

  130. A:对 B:错

温馨提示支付 ¥2.15 元后可查看付费内容,请先翻页预览!
点赞(1) dxwkbang
返回
顶部