中兴软创笔试题二

面试测试题2

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

(1)Which 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

 

(2)Which declarations of identifiers are legal? ABE

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

 

(3)Given the following code:  C

1:public 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

 

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

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

 

(5)Which are not Java keywords?AB

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

 

(6)Given the following code:

1:class Person {

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

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

4:}

5:public 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

 

(7)Given 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

 

(8)Given 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

 

(9)Given 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.

 

(10)Given 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.

1、C

2、A、B、E

3、C

4、A

5、A、B

6、D

7、A、D

8、C

9、C

10、A、D

 

 

(二)、填空题(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_________。

 

(5)、import 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]______________________________________。

1、5个

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

   return 0

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

4、3

5、v: [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(),此方法无参数,返回值为一个字符串,字符串内容为你的自定义异常信息:"你的姓名:" + Exception的getMessage()方法的返回值.格式如:

(姓名:***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
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值