Skip to content

2009-06-05 09:14一.选择题(每道题3分,共45分) (1)下列关于Java语言的特点,描述错误的是( ) A.Java是跨平台的编程语言 B.Java支持分布式计算 C.Java是面向过程的编程语言 D.Java支持多线程 (2)下述概念中不属于面向对象方法的是________。 A.对象、消息 B.继承、多态 C.类、封装 D.过程调用 (3)结构化程序设计所规定的三种基本控制结构是 ( ) A.输入、处理、输出   B.树形、网形、环形 C.顺序、选择、循环   D.主程序、子程序、函数 (4)下列关于构造方法的叙述中,错误的是( ) A.Java语言规定构造方法名与类名必须相同 B.Java语言规定构造方法没有返回值,但不用void声明 C.Java语言规定构造方法不可以重载 D.Java语言规定构造方法只能通过new自动调用 (5)下列哪个类的声明是正确的? A.abstract final class HI{} B.abstract private move(){}
C.protected private number; D.public abstract class Car{} (6)关于被私有访问控制符private修饰的成员变量,以下说法正确的是( ) A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B.可以被两种类访问和引用:该类本身、该类的所有子类 C.只能被该类自身所访问和修改 D.只能被同一个包中的类访问 (7)以下声明合法的是( ) A.default String s; B.public final static native int w( ) C.abstract double d; D.abstract final double hyperbolicCosine( )

  (9)下列关于for循环和while循环的说法中哪个是正确的?(    )    
  A.while循环能实现的操作,for循环也都能实现      
  B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果      
  C.两种循环任何时候都可替换      
  D.两种循环结构中都必须有循环体,循环体不能为空 
  (10)类Test1定义如下: 
  1.public class Test1{ 
  2.                public float aMethod(float a,float b){   } 
  3.                
  4.}        
  将以下哪种方法插入行3是不合法的。(          ) 
  A、public float aMethod(float a, float b,float c){ } 
  B、public float aMethod(float c,float d){ } 
  C、public int aMethod(int a, int b){ } 
  D、private float aMethod(int a,int b,int c){ } 
  (11)阅读以下代码: 
  import java.io.*; 
  import java.util.*; 
  public class foo{ 
  public static void main (String[] args){ 
  String s; 
  System.out.println("s=" + s); 
  } 
  } 
  输出结果应该是:(    ) 
  A.代码得到编译,并输出“s=” 
  B.代码得到编译,并输出“s=null” 
  C.由于String s没有初始化,代码不能编译通过 
  D.代码得到编译,但捕获到 NullPointException异常 
  (12)编译运行以下程序后,关于输出结果的说明正确的是 (        ) 
          public class   Conditional{ 
                  public static void main(String args[ ]){ 
                          int x=4; 
                          System.out.println(“value is “+ ((x>4) ? 99.9 
  :9)); 
  } 
  } 
  A.输出结果为:value is 99.99                B.输出结果为:value is 9 
  C.输出结果为:value is 9.0                        D.编译错误 
  (13)执行完以下代码int [ ] x = new int[10];后,以下哪项说明是正确的(        ) 
  A.x[9]为0                B.x[9]未定义                C.x[10]为0                
  D.x[0]为空 
  (14)关于以下程序段,正确的说法是(          ) 
  1. String s1=“a”+“b”; 
  2.   String s2=new String(s1); 
  3.    if(s1==s2) 
  4.       System.out.println(“= = is succeeded”); 
  5.     if (s1.equals(s2)) 
  6.        System.out.println(“.equals() is succeeded”); 
  A.行4与行6都将执行                B.行4执行,行6不执行 
  C.行6执行,行4不执行                C.行4、行6都不执行 
  (15)以下程序的运行结果是:(       ) 
  public class Increment{ 
          public static void main(String args[]){ 
  int c; 
  c = 2; 
  System.out.println(c); 
  System.out.println(c++); 
  System.out.println(c); 
  } 
  } 
  A.2           B.2           C.2               D.3 
  2               3              2                   4 
  2               3              3                   4 

  二.写出以下程序的运行结果。(每道题10分,共30分) 
  1、写出以下程序的运行结果。 
  public class ChangeStrDemo { 
  public static void changestr(String str){ 
                      str="welcome"; 
       } 
       public static void main(String[] args) { 
                      String str="1234"; 
                      changestr(str); 
                      System.out.println(str); 
            } 
  }      

  2、写出以下程序的运行结果。 
  class First{ 
                  public First(){ 
                          aMethod();                } 
                  public void aMethod(){ 
                          System.out.println(“in First class”);} 
  } 
  public class Second extends First{ 
                  public void aMethod(){ 
                          System.out.println(“in Second class”);} 
  public static void main(String[ ] args){ 
                          new Second( );                } 
  } 

  3、写出以下程序的运行结果。 
  public class FooDemo{ 
  static boolean foo(char c) { 
  System.out.print(c); 
          return true; 
  } 
  public static void main(String[] args ) { 
          int i =0; 
          for ( foo(’a’); foo(’b’)&&(i<2); foo(’c’)){ 
                  i++ ; 
                  foo(’d’); 
      } 
  } 
  } 
  ----------------------------------------------------------------------
  二. 选择题 (18题,共42分)。
  (一)单选题(共12题,每题2分,共24分)。
  程序设计语言的三种基本控制结构是:(     )
  A. 输入、处理、输出             B. 顺序、选择、循环   
  C. 树形、网形、环形             D. 主程序、子程序、函数
  在Java中,下列哪句话是正确的:(     )
  A. 几个类可以写在一个文件里     B. 一个类可以写在几个文件里
  C. 类的名称是不区分大、小写的   D. 方法的名称是不区分大、小写的
  一个必须被继承的类要用哪个关键字来描述:(     )
  A. static     B. protected       C. final      D. abstract
  下面程序的输出结果是:(     )
  class DemoClass{
  public static void main(String args[]){
  int i=1,s=5;
  do{
  s += i;
  i++;
  }while(i < 5);
  System.out.println(“s=”+s); }}
  A. s=0            B. s=5          C. s=10          D. s=15
  下列方法method的定义正确的是(A)。
  private int method () {char ch=’a’; return (int) ch; }    
  public void method {int a=8; return a;}
  int method (int i ) {return (double) (i+10) ;}    
  method (int a) {return a;}哪一组都是Java关键字:(      ) 
  A. Student, float, main, public     B. byte, boolean, box, float
  C. long, extends, float, double     D. classes, float, short, import
  下面哪种说法是正确的: (       )
  A. String是用来处理字符串的类,而B. StringBuffer不C. 是
  D. StringBuffer是用来处理字符串的类,而E. String不F. 是
  G. String和StringBuffer都是用来处理字符串的类
  H. String和StringBuffer都不I. 是用来处理字符串的类
  int x=1,a=0,b=0; 
  switch(x){ 
  case 0: b++; 
  break;
  case 1: a++;
  break;
  case 2: a++;b++;
  break;
  } 
  System.out.println("a="+a+",b="+b); 
  该程序的输出结果是 (    )
  A. a=1,b=0        B. a=1,b=1      C. a=1,b=2          D. a=2,b=2
  下面哪个赋值语句是不合法的?
  A、float a = 2.0 B、double b = 2.0
  C、int c = 2       D、long d = 2
  下面四组变量命名,符合JAVA变量命名规则的是(     )。
  A. a@bc       B. 6x         C. void         D. ye_78
  定义类A及类中的方法getVar(),定义类A的子类B,若要在类B中覆盖类A的同名方法,下面正确的定义是(    )
  class A
  {
  private float x = 1.0f;
  protected float getVar()
  {return x;}
  }
  class B extends A
  {
  private float x = 2.0f;
  //覆盖类A中的同名方法的代码放在此处}
  float getVar(){return x;}
  protected float getVar(float y){return x_y;}
  protected float getVar(){return x;}
  public float getVar(){return x;}
  根据下面给出的代码,判断哪个叙述是正确的。(    )
  public class Person {
  static int arr[]=new int[10];
  public static void main ( String a[] ) {
  System.out.println ( arr[12] );
  }
  }
  编译时将发生错误 
  编二. 选择题 (18题,共42分)。
  (一)单选题(共12题,每题2分,共24分)。
  程序设计语言的三种基本控制结构是:(     )
  A. 输入、处理、输出             B. 顺序、选择、循环   
  C. 树形、网形、环形             D. 主程序、子程序、函数
  在Java中,下列哪句话是正确的:(     )
  A. 几个类可以写在一个文件里     B. 一个类可以写在几个文件里
  C. 类的名称是不区分大、小写的   D. 方法的名称是不区分大、小写的
  一个必须被继承的类要用哪个关键字来描述:(     )
  A. static     B. protected       C. final      D. abstract
  下面程序的输出结果是:(     )
  class DemoClass{
  public static void main(String args[]){
  int i=1,s=5;
  do{
  s += i;
  i++;
  }while(i < 5);
  System.out.println(“s=”+s); }}
  A. s=0            B. s=5          C. s=10          D. s=15
  下列方法method的定义正确的是(A)。
  private int method () {char ch=’a’; return (int) ch; }    
  public void method {int a=8; return a;}
  int method (int i ) {return (double) (i+10) ;}    
  method (int a) {return a;}哪一组都是Java关键字:(      ) 
  A. Student, float, main, public     B. byte, boolean, box, float
  C. long, extends, float, double     D. classes, float, short, import
  下面哪种说法是正确的: (       )
  A. String是用来处理字符串的类,而B. StringBuffer不C. 是
  D. StringBuffer是用来处理字符串的类,而E. String不F. 是
  G. String和StringBuffer都是用来处理字符串的类
  H. String和StringBuffer都不I. 是用来处理字符串的类
  int x=1,a=0,b=0; 
  switch(x){ 
  case 0: b++; 
  break;
  case 1: a++;
  break;
  case 2: a++;b++;
  break;
  } 
  System.out.println("a="+a+",b="+b); 
  该程序的输出结果是 (    )
  A. a=1,b=0        B. a=1,b=1      C. a=1,b=2          D. a=2,b=2
  下面哪个赋值语句是不合法的?
  A、float a = 2.0 B、double b = 2.0
  C、int c = 2       D、long d = 2
  下面四组变量命名,符合JAVA变量命名规则的是(     )。
  A. a@bc       B. 6x         C. void         D. ye_78
  定义类A及类中的方法getVar(),定义类A的子类B,若要在类B中覆盖类A的同名方法,下面正确的定义是(    )
  class A
  {
  private float x = 1.0f;
  protected float getVar()
  {return x;}
  }
  class B extends A
  {
  private float x = 2.0f;
  //覆盖类A中的同名方法的代码放在此处}
  float getVar(){return x;}
  protected float getVar(float y){return x_y;}
  protected float getVar(){return x;}
  public float getVar(){return x;}
  根据下面给出的代码,判断哪个叙述是正确的。(    )
  public class Person {
  static int arr[]=new int[10];
  public static void main ( String a[] ) {
  System.out.println ( arr[12] );
  }
  }
  编译时将发生错误 
  编译时正确但是运行时出错
  输出为0 
  输出为null 译时正确但是运行时出错
  输出为0 
  输出为null 
  三.编程题(45分) 
  1.编写一个Java程序要求:开启一个文本文件,一次读取其内的一行文本。令每一行形成一个String,并将读出的String对象置于LinkedList中。请以相反次序印出LinkedList内的所有文本行。

总访问量
总访问人数 人次