admin 管理员组

文章数量: 887021


2024年2月7日发(作者:游戏里stacking是什么意思)

Word 文档

派生时被重载。

java 中级工程师面试题

目前,我国对软件人材的需求已达 20 万,并且以每年 20%

摆布的速度增长。在将来 5 年内,合格软件人材的需求将远大于供给。下面是关

B.用 abstract 修饰的类为抽象类;抽象类可以同时被static 或者final 关键字修饰。

C.抽象类中不愿定包含抽象方法,但包含抽象方法的类确定要声明为抽象类。

D.假如一个类被定义为抽象类,则该类不能进行实例化。

于 java 中级工程师面试题,希翼大家认真阅读!

一、 单项选择题(共 12 题,每题 2 分,共 24 分)

1.下面关于 Java 的表述有错误的选项是________

中没有 sizeof 操作符,全部数据类型的长度都是确定的, 与平台无关。

B.在 Java 中,局部变量不会被自动初始化,需要显式的赋初值。

中的 instanceof 运算符,可以判断一个对象是否属于某个类的实例。

D.一个 Java 文件里可以有多个 public 类,但 Java 文件名必需和包含 main 方

法的那个 public 类名精确一致。

2.下面关于 Java 中 static 关键字的表述错误的选项是________

A.被 static 修饰的类成员变量在编译时由内存支配一块空间,直到程序住手

运行才会被释放。

B.被 static 修饰的类方法只能访问其自身类未被 static 修饰的实例方法, 而不

能访问其他类的。

C.被 static 修饰的类方法不能使用this 关键字。

D.在没有创建该类的对象时,该类中用 static 修饰的类方法就可以被调用。

3.下面关于 Java 中 abstract 关键字的表述有错误的选项是________

A.用 abstract 修饰不在类内实现的方法,称为抽象方法;抽象方法必需在子类

4.下面关于 Java 中垃圾回收(gc)的表述有错误的选项是_______

A.在 String str1 = Hello';String str2 = str1;str1 = null;中,对象'Hello'不会被垃圾

回收。

B.调用 time().gc()会即将启动垃圾回收线程对当前程序进行垃

圾回收。

C.调用 ()只是提示垃圾回收器进行垃圾回收操作,但并不保证gc

线程即将启动。

D.当垃圾回收器将要释放无用对象的`内存时,先调用该对象的 finalize()方法。

5.下面关于 Java 中接口(interface)的表述有错误的选项是________

A.在接口中定义的常量可以被多个类共享,具有 public ,final ,static 属性,

可被任意类访问。

B.接口中只对方法进行声明而没有实现体,而且用分号结尾,具有 public 和

abstract 属性

C.子接口中定义了与父接口同名的常量或者相同的方法,则父接口的常量被

隐藏,方法被重写

D.实现接口的类必需实现接口和其父接口中的全部方法。

6.下面哪个方法不属于 String 类提供的______

f()

/

Word 文档

r2()

e()

return super.f(i,j);

}

()

7.在 Java 多线程中,调用下面哪种方法不会使线程进入阻塞状态?________

public int f(int j){

return -j;

()

d()

()

()

8.下面程序被编译运行时,下面哪些描述是正确的class B{

public int f(int i){

return i+i;

}

public int f(int i, int j){

return i+j;

}

public int f(char c){

return c;

}

}

public class Test extends B{public int f(int i, int j){

_________。

}

public static void main(String[] args){

B x = new Test();

n(x.f(5,1)+' +x.f(4)+' +x.f(A));

}

}

A.编译不通过, B x = new Test() 出错,类型不匹配

B.编译不通过,原由是 B.f(char c),一个 char 类型不能直接当做 int 类型返回

C.编译通过,运行输出结果是 15 -4 65

D.编译通过,运行输出结果是 15 8 65

9.下面哪个类或者接口定义了 wait()、notify() 、notifyAll()方法_______

le

roup

1.在 Java API 文档中,下面的哪部份未被包括在内_______

A.类的用途的描述

B.类层次

/

Word 文档

C.父类方法的列表 D.进程中的每一个线程的声明周期都在该进程中,每一个线程都有自己的私有虚

D.成员变量的列表 拟地址空间。

11.下面列出的修饰符中, 哪一个用来修饰方法(method)要求此方法必需显式

2.下面关于 HashMap 与 Hashtable 区分的表述正确的选项是______

p 与 Hashtable 接受的 hash/rehas 算法基本一致。 地获得某个对象才干执行________

p 允许将 null 作为一个 entry 得 key 或者 value,而 Hashtable 不允许。

onized p 与 Hashtable 都是 Map interface 的实现。

ble 的方法是 syncronized 的,而 HashMap 不是, 因此 HashMap 非线

程安全

12.下面的各种异样中,哪种异样在一个方法中没有声明抛出此异样时也可以

3.对于一个 abstract 的 method,不能用下面哪个Java 关键字同时修饰_______

在其方法体中直接抛出________

otFoundException

onized

ion

interException

4.下面关于 Java 中 Vector、ArrayList、LinkedList 的表述正确的选项是_______

ption

二、 多项选择题(共 5 题,每题 3 分,共 15 分)

A.这三个类都实现了 接口,但惟独 Vector 是线程安全的

ist 与 Vector 在从指定位置用 index 检索一个元素的时候,时间开消

1.下面对操作系统中线程和进程的表述有错误的选项是_______

A.进程是程序的运行实例,它包含内存和资源,而线程是由进程进一步派生

是 O(1)

List 在插入、删除任意位置元素的时间开消都是O(1),但它在索引一

出来的一组代码的执行过程

B.每一个进程都有一个主线程,还可以建立此外的线程。进程中的线程是并行

个元素的时候比较慢,为 O(i),其中 i 是索引的位置。

D.当向这几种类型中增加元素时,假如数目超出了其目前的长度, Vector 缺

执行的,每一个线程占用 CPU 的时间由此进程来调度。

C.进程中的全部线程共享进程的虚拟地址空间,这意味着全部线程都可以访

省状况下自动增长原来一倍的长度,而 ArrayList 与 LinkedList 则增长 5%的长度。

5.在 J2EE 中, JSP 可以使用以下哪些技术对客户端会话状态进行跟踪

/

问进程的全局变量和资源。

Word 文档

A.建立匿名的表格字段

B.使用 URL 重写

C.使用长期化 Cookies

D.使用 session 会话机制

三、 填空题(共 5 题,每题 3 分,共1.下面程序的运行结果为_________

public class Test{

public static void main(String[] args){

B obj = new B();

}

}

class A{

static {(X');}

public A(){(A');}

}

class B extends A{

static {(Y');}

public B(){(B');}

}

2.下面程序的运行结果为_________

public class Test{

分)

public static void main(String[] args)

{

Sub obj = new Sub();

();

}

}

class Base{

public String s = X';

public void print()

{

(s);

printAgain();

}

public void printAgain()

{

(A');

}

}

class Sub extends Base{

public String s = Y';

public void printAgain()

{

/

15

Word 文档

(B');

}

}

3.下面程序的运行结果为________

public class Test{

static int func(int i, int j){

try{

return i/j;

}catch(ArithmeticException e){

(A');

return ;

}catch(Exception e){

(B');

return ;

}finally{

(C');

}

}

public static void main(String[] args){

n(func(1,));

}

}

4.下面程序的运行结果为_______

class A{

void func1(){

(A');

}

}

class B extends A{

void func2(){

(B');

}

}

class C extends B{

void func2(){

(C');

}

}

public class Test{

public static void main(String[] args){

B obj = new C();

1();

2();

}

/

Word 文档

}

5.请填写下面程序的输出结果

class A{int a = 1;}

public class Test{

public static void main(String[] args){

A obj1 = new A();

A obj2 = new A();

A obj3 = obj1;

String s1 = new String(abc');

String s2 = new String(abc');

String s3 = abc';

n(obj1 == obj2);

n((obj2));

n(obj1 == obj3);

n(s1 == s2);

n((s2));

n((s3));

}

}

四、 简答题(共 3 题,前两题每题 5 分,最终一题 6 分,共 16 分)

1.请编写一个函数func(),将此函数的输入参数(int 型)逆序输出显示,如12345,要求使用递归,并且函数体代码不超过 8 行。

54321public class Test{

public void func(int i){

}

public static void main(String[] args){

Test t=new Test();

(987);

}

}

2.请用两种方式实现 Java 中的 Singletone 模式的类的基本框架,并分析其是

否线程安全。

3. 请用 Java 实现一个多线程的程序, 其中一个线程对某静态全局变量进行 1

次自加,另一个线程对该变量进行 1 次自减,要求这两个线程的实现方式不同。 /


本文标签: 方法 线程 进程 进行 程序