Java试题(三)
窗体顶端
一、 选择

1.给定下面的代码片段:
  1) String str = null;
  2) if ((str != null) && (str.length() > 10)) {
  3) System.out.println("more than 10");
  4) }
  5) else if ((str != null) & (str.length() < 5)) {
  6) System.out.println("less than 5");
  7) }
  8) else { System.out.println("end"); }
哪些行会导致错误?
A line 1
B line 2
C line 5
D line 8

2.下面哪种注释方法能够支持javadoc命令:
A /**...**/
B /*...*/
C //
D /**...*/

3. 欲编写如下图的一个界面,用于显示用户指定的图像: 如果在区域A中只能放置一个AWT组件,从各组件的本来功能角度考虑,最好使用哪种组件:
A TextArea
B Panel
C Applet
D Canvas

4. 界面如上题所示。若"Button1"的功能是:点击后弹出一个用于输入的界面,获取用户想要显示的图像文件名,则该界面最好是(从编程简单和程序不易出错的角度考虑):
A 模式(ModalDialog
B 非模式(None-modalDialog
C FileDialog
D Frame

5. 界面如上题所示。如果在A区域使用某种AWT组件(java.awt.Component的子类)来负责绘制图像,则绘图的语句最好应放在该组件的哪个方法中(考虑到应用程序和Java虚拟机的AWT线程都会要求重画该组件)?
A 构造方法
B paintGraphics g
C updateGraphics g
D repaint()

6.下面关于Applet的说法正确的是
A Applet也需要main方法
B Applet必须继承自java.awt.Applet
C Applet能访问本地文件
D Applet程序不需要编译

7.看下面一段程序:
  class Aclass{
   void go(){
    System.out.println("Aclass");
   }
  }
  public class Bclass extends Aclass{
   void go{
    System.out.println("Bclass");
   }
  public static void main(String args[]){
   Aclass a=new Aclass();
   Aclass a1=new Bclass();
  a.go();
  a1.go();
  }
以上程序运行结果是:
A Aclass
   Aclass
B Bclass
   Bclass
C Aclass
   Bclass
D Bclass
   Aclass

8.下列关于Java线程的说法那些是正确的()
A 每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。
B 创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。
C Thread类属于java.util程序包。
D 以上说法无一正确。

9.看以下程序:
  boolean a=false;
  boolean b=true;
  boolean c=(a&&b)&&(!b)
  int result=c==false?1:2;
这段程序执行完后,cresult的值是:
A c=false;result=1;
B c=true;result=2;
C c=true;result=1;
D c=false;result=2;

10.运行下列程序, 会产生什么结果
  public class X extends Thread implements Runable{
  public void run(){
   System.out.println("this is run()");
  }
  public static void main(String args[])
  {
   Thread t=new Thread(new X());
   t.start();
   }
  }
A 第一行会产生编译错误
B 第六行会产生编译错误
C 第六行会产生运行错误
D 程序会运行和启动

11.指出下列程序的运行结果
  int i = 9;
  switch (i) {
  default:
  System.out.println("default");
  case 0:
  System.out.println("zero");
  break;
  case 1:
  System.out.println("one");
  case 2:
  System.out.println("two");
  }
A default
B default, zero
C error default clause not defined
D no output displayed那个

12.运行下列程序,会产生什么结果:
  class Outer1{
   private int a;
   void foo(double d,final float f){
    String s;
    final boolean b;
    class Inner{
     void methodInner(){
      System.out.println("in the Inner");
     }
    }
   }
   public static void main(String args[])
  {
  Outer1 me=new Outer1();
  me.foo(123,123);
  System.out.println("outer");
  }
 }
A in the Inner outer
B outer
C in the Inner
D 编译不通过
窗体底端
窗体顶端
二、多项选择

1.下面哪些标识符在Java语言中是合法的?
A persons$
B TwoUsers
C *point
D d-line

2.下面哪些代码片段会产生编译错误?
A String s = "Gone with the wind"; String t = " good "; String k = s + t;
B String s = "Gone with the wind"; String t; t = s[3] + "one";
C String s = "Gone with the wind"; String standard = s.toUpperCase();
D String s = "home directory"; String t = s - "directory".

3.下面哪些赋值语句是错误的?
A float f = 11.1;
B double d = 5.3E12;
C char c = '\r';
D byte bb = 433;

E Boolean b=true;

4.给定下面的代码片段:
  public void Test() {
   try {
      method();
      System.out.println("Hello World");
     }
   catch (ArrayIndexOutOfBoundsException e)
   {
    System.out.println("Exception?");
   }
   catch(Exception e)
   {
    System.out.println("Exception1");
   }
   finally{
    System.out.println("Thank you!");
    }
   }
如果函数method正常运行并返回,会显示下面的哪些信息?
A Hello World
B Exception
C Exception1
D Thank you!

5.下列哪些语句是正确的?
A int a[][]=new int[][3];
B int a[][]={{1,3},{2,3,4},{1,2}};
C String s[][]=new String[2][];
D String s[][]={{"can","I"},{"help","you"}}

6.下面哪些语句能够正确地生成5个空字符串?
A String a [] = new String [5]; for (int i = 0; i < 5; a[i++] = "");
B String a [] = {"", "", "", "", ""};
C String a [5];
D String [5] a;

E String [] a = new String [5]; for (int i = 0; i < 5; a[i++] = null);

7.下面关于Java代码安全的说法哪些是正确的?
A 程序执行过程中需要的所有类都是通过字节码校验程序装入的。
B 代码的运行是由Java运行环境中的解释器完成的。
C 在运行时,字节码要经过装入,校验之后,才能在解释器中执行。
D 在缺省的安全配置条件下,Java Applet不能访问任何本地资源。

8.下列方法属于java.lang.Math类的有(方法名相同即可):
A random()
B abs()
C sqrt()
D sin()

9.下列表达式哪些是正确的:
A byte=340;
B Boolean=1;
C long l=-2;
D double=0.9239d;

10.下面的说法正确的是:
A Java语言里的线程不是对象
java用什么软件运行B Applet不需要main方法
C Java语言的对象都是java.lang.Object的子类
D doubleJava语言的合法标识符

11.下面的Java语句错误的是:
A Double a=1.0;
B double a=1.0;
C out.println("hello");
D DatagramSocket a = new DatagramSocket()
窗体底端
窗体顶端
填空题

1. Java中类成员的限定词有以下几种:private, public, ,。其中,的限定的范围最大。

2. Java中所有类都是类的子类。

3. 请填出在java.lang包中与下列基本数据类型相对应的封装类: floatjava.lang.Float char boolean

4. 请写出下面程序的运行结果。
  public class Test extends TT{
    public void main(String args[]){
    Test t = new Test("Tom");
   }
   public Test(String s){
    super(s);
    System.out.println("How do you do?");
   }
   public Test(){
    this("I am Tom");
   }
  }
  class TT{
    public TT(){
     System.out.println("What a pleasure!");
    }
    public TT(String s){
     this();
     System.out.println("I am "+s);
    }
  }
结果:

5. 给定下面的未完成的代码片断:
  public class Example{
    int x,y;
  public Example(int a){
     
     x = a;
  }
  public Example(int a, int b){
   //和上面一个参数的构造方法做同样的操作,包括赋值
    x=a y = b;
    }
  }
  如果要用最简捷的一行代码实现"//和上面一个参数的…"注释所指出的功能,请写出你认为最合适的一行代码:

6. 如果有一个类MyFrameFrame的子类,能够被不同包中的类所使用,同时又能够为线程提供运行代码(run()方法),请写出该类的声明头。 你的解答:

窗体底端
窗体顶端
四、 编程题

1. 编写一个程序用选择法对数组a[]={20,10,50,40,30,70,60,80,90,100}进行由大到小的排序。



2. 使用socket编写一个服务器端程序,服务器端程序在端口8888监听,如果它接到客户端发来的"hello"请求时会回应一个"hello",对客户端的其他请求不响应。



3. 编写一个应用程序,创建三个线程分别显示各自的时间。



4. 编写一个计算器程序,只有加减乘除功能,当作applet运行。





窗体底端
窗体顶端
窗体底端
窗体顶端
窗体底端
窗体顶端
五、 程序填空题:

1. 在空白处填上合适的语句。
  public class ServerTimedOutException extends Exception {
   private int port;
   public ServerTimedOutException(String message, int port) {
     super(message);
     this.port = port;
   }
  public int getPort() {
  return port;
   }
  }
  class Client{
  //在下行空白出填上声明抛弃ServerTimedOutException例外的语句
    public void connectMe(String serverName)
     {
      int success;
      int portToConnect = 80;
      success = open(serverName, portToConnect);
      if (success == -1) {
  /*在下行空白处填上抛出ServerTimedOutException例外的语句*/
     
      }
    }
  }

窗体底端

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。