湖南龙通软件开发工程师试题A(JAVA方向)

2020-03-03 06:45:28 来源:范文大全收藏下载本文

龙通科技有限公司笔试题

软件开发工程师试题A卷(Java方向)

考试说明:

1.总分:100分;考试时间:100分钟;

2.选择题为不定项选择,不全对没分,2分/题,总分50分;

3、请将答案写在答题纸上;

4、请尽可能充分的给出你的理由与思路,将有利于我们对你的考评。

一、选择题(25 x 2’ = 50’)

1、一个Java程序运行从上到下的环境次序是( C )

A. 操作系统、Java程序、JRE/JVM、硬件

B. JRE/JVM、Java程序、硬件、操作系统

C. Java程序、JRE/JVM、操作系统、硬件

D. Java程序、操作系统、JRE/JVM、硬件

2、下面代码中的第2行可以插入一行代码 ( AB )保证程序编译通过。

1、public interface A{

2、

3、}

A.void method();

B.public void method();

C.static void method();

D.private void method();

E.protected void method();

3、关于异常下列描述中,错误的是(ABC

A.异常机制可以用于流程控制

B.finally代码段在发生异常时不一定必须执行

C.在catch代码段中可以使用return语句来返回到异常抛出点

D.可以把catch到的异常对象再次抛出,使上层try—catch结构继续处理该异常事件

4、关于被私有访问控制符private修饰的成员变量,以下说法正确的是(C

A. 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B. 可以被两种类访问和引用:该类本身、该类的所有子类

C. 只能被该类自身所访问和修改

D. 只能被同一个包中的类访问

5、某类Example的main()方法参数为args,当命令行中输入Java Example cat时,args[0]的值为( A )。

A. catB. JavaC. exampleD. null

6、下面关于Thread类提供的线程控制方法的说法中,错误的是(D

A. 在线程A中执行现成B的join方法,则线程A等待直到线程B执行完成。

B. 线程A通过调用iterrupt方法来中断其阻塞状态

C. 若线程A调用方法isAlive返回值为true,则说明A正在执行中

1/10

D. currentThread方法返回当前线程的引用

7、类Test1定义如下:

1.publicclaTest1{

2.

3.

4.}

将以下哪种方法插入行3是不合法的。( B )

A. publicfloataMethod(floata, floatb,floatc){}

B. publicfloataMethod(floatc,float d){}

C. publicintaMethod(inta, int b){}

D. private float aMethod(int a,int b,int c){}

8、下面程序的输出结果是(C )

private static void foo() {

try {

System.out.println(\"try\");

foo();

} catch (Throwable e) {

System.out.println(\"catch\");

foo();

} finally {

System.out.println(\"finally\");

foo();

}

}

public static void main(String[] args) {

foo();

}

A.执行一段时间后报栈溢出。B.会一直输出“try”。

C.会一直输出“try”和“finally”。D.会一直输出“try”、“catch”和“finally”

9、下面的哪些程序片断可能导致错误?(BD)

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

2/10publicfloataMethod(floata,floatb){}

D.String s = \"home directory\";

String t = s - \"directory\";

10、已知如下代码:

1: cla Example{

2:String str;

3:public Example(){

4:str= \"example\";

5:}

6:public Example(String s){

7:str=s;

8:}

9:}

10: cla Demo extends Example{

11: }

12: public cla Test{

13: public void f () {

14:Example ex = new Example(\"Good\");

15:Demo d = new Demo(\"Good\");

16: } }

哪句语句会导致错误?(E)

A、line 3

B、line 6

C、line 10

D、line 14

E、line 1

511、下面的代码中第4行创建的对象在什么时候符合垃圾回收的条件(

1、cla Bar { }

2、cla Test {

3、Bar doBar() {

4、Bar b = new Bar();

5、return b;

6、}

7、public static void main (String args[]) {

8、Test t = new Test();

9、Bar newBar = t.doBar();

10、newBar = new Bar();

11、}

12、}

A.程序运行第9行之后。

B.程序运行第10行之后。

C.doBar方法运行结束之后。

3/10

)B

D.main方法运行结束之后。

12、下列关于for循环和while循环的说法中哪个是正确的?(A

A.while循环能实现的操作,for循环也都能实现

B. while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果

C. 两种循环任何时候都可替换

D. 两种循环结构中都必须有循环体,循环体不能为空

13、下述说法中,错误的是(D )

A.Java中,方法的重载是指多个方法可以共享同一个名字

B.Java中,用abstract修饰的类称为抽象类,它不能实例化

C.Java中,接口不包含成员变量和方法实现

D.Java中,构造方法可以有返回值

14、下面哪些是正确的(AEF)

11.cla ClaA {}

22.ClaB p1 = new ClaB(); 23.ClaC p2 = new ClaC(); 24.ClaA p3 = new ClaB(); 25.ClaA p4 = new ClaC(); 12.cla ClaB extends ClaA {} 13.cla ClaC extends ClaA {} and:21.ClaA p0 = new ClaA(); A.p0 = p1;

15、以下代码片段,正确的结果是:( D )

11.claA {

12.public void proce() { System.out.print(”A,”); } } 13.cla B extends A {

15.super.proce();

16.System.out.print(”B,”);

17.throw new IOException();

18.} }

19.public static void main(String[] args) {

20.try { new B().proce(); }

21.catch (IOException e) {

22.System.out.println(”Exception”); } }

A.Exception

B.A,B,Exception

C.Compilation fails because of an error in line 20.

D.Compilation fails because of an error in line 14.

E.A NullPointerException is thrown at runtime.4/1014.public void proce() throws IOException {B.p1 =p2;C.p2 = p4;F.p2 = (ClaC)p4; D.p2 = (ClaC)p1; E.p1 = (ClaB)p3;

16、设栈最大长度为3,入栈顺序为1,2,3,4,5,6,则不可能的出栈序列是( C)

A.1,2,3,4,5,6

B.2,1,3,4,5,6

C.3,4,2,1,5,6

D.4,3,2,1,5,6

17、设有98个已排序列元素,采用二分法查找时,最大比较次数是(D

A.49B.15C.20D.7

18、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是(B

A.9B.11C.15D.不确定

19、若一个栈的输入序列为1,2,3,„,n,输出序列的第一个元素是i,则第j个输出元素是(D )。

A.i-j-1B.i-jC.j-i+1D.不确定的

二、程序改错(5 * 2’ = 10’)

1.----

public cla Unbelievable {

static Integer i;

public static void main(String[] args) {

}

}

if (i == 42)System.out.println(\"Unbelievable\");

答:此题会出NullPointException,原因是i是Integer类型,没有给i赋值

2.——————————————————————————————————

cla Animal {

}

cla Dog extends Animal {

}

cla Cat extends Animal {

public String noise() {return \"meow\"; 5/10public String noise() {} return \"bark\"; public String noise() {} return \"peep\";

}

public cla Test {

}

答:此题会出ClaCastException 原因是Cat cat = (Cat) animal;强制转换出错,animal指向的是Dog()而Dog并不是Cat的父子类关系,好比方说猫和狗都是动物类型,在这里你是想将狗转换成猫肯定是行不通的.public static void main(String[] args) {} Animal animal = new Dog(); Cat cat = (Cat) animal; cat.noise(); }

3.—————————————————————————————————————— abstract cla Something {

}

答:抽象类中的抽象方法不能是private修饰的,因为抽象方法必须要被实现

public cla Something {

}

cla Other {

}

答:没有错 public int i; public static void main(String[] args) {} public void addOne(final Other o) {} o.i++; Other o = new Other(); new Something().addOne(o); private abstract String doSomething();4.——————————————————————————————————————

5.—————————————————————————————————————— cla Something {

}

答:该题错误在final int i ,final修饰的变量一定要在声明的时候初始化,可以改成 final int i = 1;final int i; public void doSomething() {} System.out.println(\"i = \" + i);

6

湖南龙通软件开发工程师试题A(JAVA方向)

JAVA BS软件开发工程师招聘试题(实习生)答案

软件开发工程师试题

软件开发工程师笔试试题应届毕业生

Java软件开发的前景大好

Java方向面试个人简历

软件开发工程师个人简历

软件开发工程师简历

嵌入式软件开发工程师

软件开发工程师职责

《湖南龙通软件开发工程师试题A(JAVA方向).doc》
湖南龙通软件开发工程师试题A(JAVA方向)
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
下载全文