CSDN博客

img sweetna

中兴软创笔试题二

发表于2008/12/1 11:10:00  8689人阅读

 

面试测试题2

(一)、选择题(4′×10)

1Which of the following range of short is correct?  C

A. -27 ~ 27-1   B. 0 ~ 216-1       C. -215 ~ 215-1   D. -231 ~ 231-1

 

2Which declarations of identifiers are legal? ABE

A. $persons    B. TwoUsers    C. *point     D. this     E. _endline

 

3Given the following code:  C

1public void modify() {

2    int i, j, k;

3    i = 100;

4    while ( i > 0 ) {

5        j = i * 2;

6        System.out.println (" The value of j is " + j );

7        k = k + 1;

8        i--;

9    }

10}

Which line might cause an error during compilation? C

A. line 4    B. line 6    C. line 7    D. line 8

 

4Which of the following answer is correct to express the value 8 in octal number? A

A. 010     B. 0x10     C. 08     D. 0x8

 

5Which are not Java keywords?AB

A. TRUE   B. sizeof    C. const    D. super    E. void

 

6Given the following code:

1class Person {

2    public void printValue(int i, int j) {//... }

3    public void printValue(int i){//... }

4}

5public class Teacher extends Person {

6    public void printValue() {//... }

7    public void printValue(int i) {//...}

8    public static void main(String args[]){

9        Person t = new Teacher();

10        t.printValue(10);

11   }

12}

Which method will the statement on line 10 call? D

A. on line 2     B. on line 3      C. on line 6     D. on line 7

 

7Given the following code:

public void test() {

    try { oneMethod();

        System.out.println("condition 1");

    } catch (ArrayIndexOutOfBoundsException e) {

        System.out.println("condition 2");

    } catch(Exception e) {

        System.out.println("condition 3");

    } finally {

        System.out.println("finally");

    }

}

Which will display if oneMethod run normally?   AD

A. condition 1    B. condition 2    C. condition 3    D. finally

 

8Given the following code:

public class Test {

    void printValue(int m){

        do { System.out.println("The value is"+m);

        }

        while( --m > 10 );

    }

    public static void main(String arg[]) {

        int i=10;

        Test t= new Test();

        t.printValue(i);

    }

}

Which will be output? C

A. The value is 8

B. The value is 9

C. The value is 10

D. The value is 11

 

9Given the following code:

public class Person{

    static int arr[] = new int[10];

    public static void main(String a[]) {

        System.out.println(arr[1];)

    }

}

Which statement is correct?    C

A. When compilation some error will occur.

B. It is correct when compilation but will cause error when running.

C. The output is zero.

D. The output is null.

 

10Given the following code:

String s = "hello";

String t = "hello";

char c[] = {'h','e','l','l','o'} ;

Which return true?  AD

A.      s.equals(t);                   

B.      t.equals(c);

C.      s==t;

D.     t.equals(new String("hello"));                            

E.      t==c.

1C

2ABE

3C

4A

5AB

6D

7AD

8C

9C

10AD

 

 

(二)、填空题(4′×5)

 (1)String str = new String (“Practical ”) ;

str += “Java” ;

共产生几个对象:____5______

 

2)、递归函数sum(int a[],int n)的返回值是数组a[]的前n个元素之和

int sum(int a[],int n)
{ if (n>0) return __a[0]+sum(a+1,n-1)________;
  
else __return 0;
}

 

3)、short s1 = 1; s1 = s1 + 1 short s1 = 1; s1 += 1; 那个可以编译通过,为什么

_____第二个   第一个 丢失精度_________________________________________________

 

4)、设int x=1,y=2,z=3,则表达式 y+=z--/++x的值是___3_________

 

5import java.util.*;

class Int {

  private int i;

  public Int(int ii) { i = ii; }

  public void increment() { i++; }

  public String toString() {

    return Integer.toString(i);

  }

}

public class test {

  public static void main(String[] args) {

    ArrayList v = new ArrayList();

    for(int i = 0; i < 10; i++ )

      v.add(new Int(i));

    System.out.println("v: " + v);

    ArrayList v2 = (ArrayList)v.clone();

    for(Iterator e = v2.iterator();

        e.hasNext(); )

      ((Int)e.next()).increment();

      System.out.println("v: " + v);

  }

}

上面这段代码输出什么 v: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

___v: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]______________________________________

15

2a[n-1]+sum(a,n-1) a[0]+sum(a+1,n-1)

   return 0

3、第二个(第一个丢失精度)

43

5v: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

   v: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

 

 

 

(1)(15′)请编写程序打印下列图案: *********

        *******  

                                            ***** 

       *** 

                                                                                

 

2)、(25′)Java异常处理机制测试

继承Exception类编写一个自定义异常类MyException,在自定义异常类中加入一个方法getMyMessage(),此方法无参数,返回值为一个字符串,字符串内容为你的自定义异常信息:"你的姓名:" + ExceptiongetMessage()方法的返回值.格式如:

(姓名:***Exception***)。

编写一个类ExceptionMaker,在里面定义一个方法throwException(),在这个方法中制造一种异常情况,抛出一个JDK自带的异常,捕捉这个异常,并在catch处理语句中抛出你的自定义异常MyException,抛出的自定义异常要求保留原异常的信息(getMessage()的返回值);

再编写一个类MyExceptionTestCase,测试你编写的前面两个类,调用第二个类中的抛出你自定义异常的方法throwException(),捕捉你的自定义异常,并输出你自定义的异常信息.

 

 

 

 

 

 

答案

(三)编程题

1

public class Test01 {

       public static void main(String[] args) {

              int i, j, t, c;

              j = 1;                           

              t = 9;                          

              c = 5;                          

              while(c > 0){

                     for(i = 0; i <= j; i++){

                            System.out.print(" ");

                     }

                     j++;

                     for(i = 0; i < t; i++){

                            System.out.print("*");

                     }

                     t -= 2;

                     System.out.println();

                     c--;

              }

       }

}

2/**

 * 自定义的异常类

 */

class MyException extends Exception {

       private String str;

       /**

        * 抛出异常

        *@return  抛出异常串

        */

       public String getMyMessage() {

              return str;

       }

       /**

        * 构造自定义异常

        *@param 发生的异常

        */

       public MyException(Exception e) {

              Exception excep = new Exception(e);

              str = "zhanggenbo" + excep.getMessage();

       }

 

}

/**

 * 自定义的异常类

 */

class ExceptionMaker {

       /**

        * 扑获异常

        */

       public void throwException() throws ArithmeticException, MyException {

              try {

                     int i = 3 / 0;

              } catch (ArithmeticException e) {

                     System.out.println(e.getMessage());

                     throw new MyException(e);

              }

       }

}

/**

 * 测试异常类文件

 *@author 张根波

 */

public class MyExceptionTestCase {

       /**

        * 测试异常

        *@param arg 入口参数

        */

       public static void main(String arg[]) {

              ExceptionMaker em = new ExceptionMaker();

              try {

                     em.throwException();

              } catch (MyException e) {

                     System.out.println(e.getMyMessage());

              }

       }

}

 

 

 

0 0

相关博文

我的热门文章

img
取 消
img