[东大] 18年6月《JAVA语言程序设计Ⅰ》复习题[java语言程序设...

[复制链接]
发表于 2018-5-30 17:23:23 | 显示全部楼层 |阅读模式
1
下面哪些赋值语句是合法的?
A. float a = 2.0;
B. double b = 2.0;
C. int c = 2;
D. long d = 2;
参考答案:BCD
2
你怎样从下面main()的调用中访问单词“kiss?
java lyrics a kissis but a kiss
A. args[0]
B. args[1]
C. args[2]
D. args[3]
E. args[4]
F. args[5]
参考答案:BF
3
下面的哪些叙述为真。
A. equals()方法判定引用值是否指向同一对象。
B. ==操作符判定两个分立的对象的内容和类型是否一致。
C. equals()方法只有在两个对象的内容一致时返回true
D. File重写方法equals()在两个分立的对象的内容和类型一致时返回true
参考答案:D
4
设有下面的一个类定义:
   class AA {
     static void  Show( ){System.out.println("我喜欢Java!"); }
   }
   class BB {  void  Show( ){ System.out.println("我喜欢C++!"); } }
若已经使用AA类创建对象aBB类创建对象b,则下面哪一个方法调用是正确的:(     
A. a.Show( )
b.Show( )
B. AA.Show( )
BB.Show( )
C. AA.Show( )
b.Show( )
D. a.Show( )
BB.Show( )
参考答案:C
5
给出下列的代码,哪行在编译时可能会有错误?
public void modify(){
int i, j, k;
i = 100;
while i > 0 {
j = i * 2;
System.out.println " The value of j is " + j ;
k = k + 1;
}
}
A. 4
B. 6
C. 7
D. 8
参考答案:C
6
Java语言是( )
A. 面向问题的解释型高级编程语言
B. 面向机器的低级编程语言
C. 面向过程的编译型高级编程语言
D. 面向对象的解释型高级编程语言
参考答案:D
7
下面哪一个类可以访问foo包中的所有变量?
package foo;
class a{int c}
class b{privateint d}
class c{public inte}
A. class a
B. class b
C. class c
D. 都不能
参考答案:B
8
给出如下代码:
class Test{
  private int m;
  public static void fun() {
    // some code...
  }
}
如何使成员变量m被函数fun()直接访问?
A. private int m 改为protected int m
B. private int m 改为 public int m
C. private int m 改为 static int m
D. private int m 改为 int m
参考答案:C
9
下面哪些是Java关键字?
A. NULL
B. default
C. sizeof
D. instanceof
参考答案:BD
10
创建一个标识有"关闭"按钮的语句是(      )
A. TextField  b = new TextField("关闭");
B. Label  b = new Label("关闭");
C. Checkbox  b = new Checkbox("关闭");
D. Button   b = new Button("关闭");
参考答案:D
11
表达式7&2的值应该是:
A. 0
B. 2
C. 5
D. 7
参考答案:B
12
当浏览器返回到包含applet URL页面时调用以下哪个函数?
A. init()
B. start()
C. stop()
D. destroy()
参考答案:B
13
在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上(     )语句。
A. import   java.awt.* ;
B. import   java.applet.* ;
C. import   java.io.* ;
D. import   java.awt.event.* ;
参考答案:D
14
a的值为3时,下列程序段被执行后,c的值是多少?(     
   c = 1;
   if  (a>0 )  if  ( a>3 ) c = 2;   else   c = 3;   else   c = 4;
A. 1
B. 2
C. 3
D. 4
参考答案:C
15
下面的哪些程序片断可能导致错误。
A. Strings="Gonewiththewind";
Stringt="good";
String k=s+t;
B. Strings="Gonewiththewind";
String t;
t=s[3]+"one";
C. Strings="Gonewiththewind";
Stringstandard=s.toUpperCase();
D. Strings="homedirectory";
Stringt=s-"directory".
参考答案:BD
16
哪些类可用于处理Unicode字符?
A.InputStreamReader
B. BufferedReader
C. Writer
D.PipedInputStream
参考答案:ABC
17
如果A类基于B类,请问哪个类是子类,哪个类是父类?
A. 两个都不是父类或者子类
B.   AB的子类
C.   BA的子类
D. 两个都是对方的子类
参考答案:B
18
下列方法中可以用来创建一个新线程的是
A. 实现java.lang.Runnable接口并重写start()方法
B. 实现java.lang.Runnable接口并重写run()方法
C. 实现java.lang.Thread类并重写run()方法
D. 实现java.lang.Thread类并重写start()方法
参考答案:B
19
编译Java Applet 源程序文件产生的字节码文件的扩展名为(     )
A. java
B. class
C. html
D. exe
参考答案:B
20
监听器接口的方法返回值是什么?
A. int
B. String
C. void
D. Object
参考答案:C
21
请选择以下代码的正确的重载构造器。
class Happy {
Happy() {
}
}
A. public voidHappy(){}
B. publicHappy(int c){}
C. protectedHappy(){}
D. void Happy(){}
参考答案:B
22
下面哪个方法可用于定义新线程类?
A. 实现 Runnable 接口
B. 在类中添加一个 run() 方法
C. 创建一个Thread类的实例
D. 继承Thread
参考答案:AD
23
在编写异常处理的Java程序中,每个catch语句块都应该与(      )语句块对应,使得用该语句块来启动Java的异常处理机制。
A. if - else
B. switch
C. try
D. throw
参考答案:C
24
给出下面的代码段:
public class Base{
int w, x, y ,z;
public Base(inta,int b)
{
x=a; y=b;
}
public Base(int a,int b, int c, int d)
{
//赋值 x=a, y=b
w=d;
z=c;
}
}
在代码说明//赋值 x=a, y=b处写入如下哪几行代码是正确的?
A. Base(a,b)
B. x=a,y=b;
C. x=a;y=b;
D. this(a,b);
参考答案:CD
25
Java中,存放字符串常量的对象属于(     )类对象。
A. Character
B. String
C. StringBuffer
D. Vector
参考答案:B
26
以下哪个语句是正确的?
A. Java中允许简单继承,它可以保证代码更可靠。
B. 子类继承父类中包括构造函数在内的所有方法。
C. 一个类能实现它所需要的所有接口。
D. 当一个类实现一个接口时,它能仅选择接口中它所需要的方法进行重写。
参考答案:AC
27
你编译一个定义了5个类和18个方法的Java源文件。请问,当编译该源文件时会产生多少字节码文件,扩展名是什么?
A. 23个字节码文件,扩展名为.class
B. 1个字节码文件,扩展名为.class
C. 5个字节码文件,扩展名为.java
D. 5个字节码文件,扩展名为.class
参考答案:D
28
请选出创建数组的正确语句。
A. float f[][] =new float[6][6];
B. float []f[] =new float[6][6];
C. float f[][] =new float[][6];
D. float [][]f =new float[6][6];
E. float [][]f =new float[6][];
参考答案:ABDE
29
对于构造函数,下列叙述正确的是(     )。
A. 构造函数也允许重载。
B. 子类无条件地继承父类的无参构造函数。
C. 子类不允许调用父类的构造函数。
D. 在同一个类中定义的重载构造函数可以相互调用。
参考答案:AD
30
已知表达式int m[] = {0, 1, 2, 3, 4, 5, 6 };
下面哪个表达式的值与数组下标量总数相等?
A. m.length()
B. m.length
C. m.length()+1
D. m.length+1
参考答案:B
31
Java  Application源程序的主类是指包含有(     )方法的类。
A. main方法
B. toString方法
C. init方法
D. actionPerfromed方法
参考答案:A
32
下列关于静态初始化器的叙述中,哪一个是正确的?(     
A. 静态初始化器是在构造函数之前加上static修饰符。
B. 静态初始化器是对类自身进行初始化。
C. 静态初始化器在同一个类中只能有一个。
D. 静态初始化器是在其所属的类加载内存时由系统自动调用执行。
参考答案:BD
33
下列哪个是合法的Java标识符?
A.Tree&Glasses
B. FirstJavaApplet
C. _$theLastOne
D. 273.5
参考答案:ABC
34
Panel默认的布局管理器是
A. GridLayout
B. BorderLayout
C. FlowLayout
D. CardLayout
参考答案:C
35
选择合法的Java标识符。
A. userName
B. %passwd
C. 3d_game
D. $charge
E. this
参考答案:AD
36
Person, Student Teacher 都是类名。这些类有以下继承关系。
Person
|
--------------------
|             |
Student    Teacher
并且在Java源代码中有如下表达式:
Person p = newStudent();
如下哪个语句是正确的?
A. 这条语句是合法的
B. 这条语句是不合法的
C. 编译时出错
D. 编译正确但运行时出错
参考答案:A
37
下列代码的执行结果是
public class Test
{     public int aMethod()
      {
           static int i=0;
           i++;
           System.out.printlni;
      }
      public static void mainString args[])
      {
           Test test = new Test()
A. 编译错误
B. 0
C. 1
D. 运行成功,但不输出
参考答案:A
38
下列关于Frame类的说法不正确的是
A. FrameWindow类的直接子类
B. Frame对象显示的效果是一个窗口
C. Frame被默认初始化为可见
D. Frame的默认布局管理器为BorderLayout
参考答案:C
39
在一个应用程序中有如下定义:int a[]={1,2,3,4,5,6,7,8,9,10};,为了打印输出数组a的最后一个元素,下面正确的代码是( )
A.System.out.println(a[10]);
B.System.out.println(a[9]);
C.System.out.println(a[a.length]);
D.System.out.println(a(8));
参考答案:B
40
下面哪些是Java的关键字?
A. goto
B. null
C. FALSE
D. native
E. const
参考答案:ABDE
二、程序设计题
建立一个表示复数的类:私有数据为两个浮点数分别表示实部和虚部,初始化方式有1)无参默认为0;2)两个浮点数分别表示实部和虚部;外部接口有:以a+bi的形式输出的复数;两个复数相加;复数加一浮点数;比较两个复数是否相等。
class Complex {
         privatedouble real_part;
         privatedouble imagin_part;
         publicComplex() {
                  this(0.0,0.0);
         }
         publicComplex(double real_part, double imagin_part) {
                  this.real_part= real_part;
                  this.imagin_part= imagin_part;
         }
         publicdouble getReal_part() {
                  returnthis.real_part ;
         }
         publicdouble getImagin_part() {
                  returnthis.imagin_part ;
         }
public Complex addComplex(Complex c) {//复数相加
                  this.real_part+= c.real_part;
                  this.imagin_part+= c.imagin_part;
                  returnthis;
         }
public Complex addComplex(float c) {//加浮点数
                  this.real_part+= c;
                  returnthis;
         }
         
         publicboolean equal(Complex c) {//加浮点数
                  if(     this.real_part==c.getReal_part()&&this.imagin_part== c.getImagin_part()){
                          returntrue;
                  }
                  returnfalse;
         }
public String toString() {//输出
                  //按照虚部正负,不同显示
                  if(this.imagin_part >= 0)
                          returnthis.real_part + "+" + this.imagin_part + "i";
                  returnthis.real_part + "-" + this.imagin_part + "i";
         }
}
// 测试类
public class Test {
         publicstatic void main(String[] args) {
         
                  Complexc1 = new Complex(1.0, 1.0);
                  Complexc2 = new Complex(2.0, 3.0);
                  
                  System.out.println(c1.addComplex(c2));
                  System.out.println(c2.addComplex(3.0f));
                  
                  System.out.println(c1.equal(c2));
         }
}

快速回复 返回顶部 返回列表