好文档 - 专业文书写作范文服务资料分享网站

java高级工程师-面试题及答案

天下 分享 时间: 加入收藏 我要投稿 点赞

一: 选择题

1. 关于以下程序代码的说明正确的是( D ) 1.class HasStatic{

2. private static int x=100;

3. public static void main(String args[ ]){ 4. HasStatic hs1=new HasStatic( ); 5. hs1.x++;

6. HasStatic hs2=new HasStatic( ); 7. hs2.x++;

8. hs1=new HasStatic( ); 9. hs1.x++; 0. HasStatic.x- -;

1. System.out.println(“x=”+x); 2. } 3. }

A、 5行不能通过编译,因为引用了私有静态变量 B、 10行不能通过编译,因为x是私有静态变量 C、 程序通过编译,输出结果为:x=103 D、 程序通过编译,输出结果为:x=102

2. 下列关于for循环和while循环的说法中哪个是正确的?(A.while循环能实现的操作,for循环也都能实现

1 / 10

B )

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

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

D.两种循环结构中都必须有循环体,循环体不能为空 3. 以下选项中循环结构合法的是( C ) A、while (int i<7) { i++;

System.out.println(“i is “+i); }

B、 int j=3; while(j) {

System.out.println(“ j is “+j); }

C、int j=0;

for(int k=0; j + k !=10; j++,k++) {

System.out.println(“ j is “+ j + “k }

D、 int j=0; do{

is”+ k); 2 / 10

System.out.println( “j is “+j++); if (j = = 3) {continue loop;} }while (j<10);

4. 给出下面代码段, 哪行将引起一个编译时错误?( D ) 1) public class Test { 2) int n = 0; 3) int m = 0;

4) public Test(int a) { m=a; }

5) public static void main(String arg[]) { 6) Test t1,t2; 7) int j,k; 8) j=3; k=5; 9) t1=new Test(); 10) t2=new Test(k); 11) } 12) }

A. 行1 B. 行4 C. 行6 5. 下面的方法,当输入为2的时候返回值是多少?( public int getValue(int i) { int result = 0; switch (i) {

3 / 10

D. 行9 ) D

case 1:

result = result + i; case 2:

result = result + i * 2; case 3:

result = result + i * 3; }

return result; }

A 0 B 2 C 4 D 10 二 : 简述题

1、描述一下 JVM 加载 class 文件的原理机制?

JVM 中类的装载是由 ClassLoader 和它的子类来实现的,Java ClassLoader 是一个重要的

Java 运行时系统组件。它负责在运行时查找和装入类文件的类。 2、heap 和 stack 有什么区别。

java 的内存分为两类,一类是栈内存,一类是堆内存。栈内存是指程序进入一个方法时, 会为这个方法单独分配一块私属存储空间,用于存储这个方法内部的局部变量,当这个方法 结束时,分配给这个方法的栈会释放,这个栈中的变量也将随之释放。

堆是与栈作用不同的内存,一般用于存放不放在当前方法栈中的那些数据,例如,使用 new 创建的对象都放在堆里,所以,它不会随方法的结束而消失。方法中的局部变量使用 final 修饰后,放在堆中,而不是栈中。

4 / 10

3、GC 是什么?为什么要有 GC?

GC 是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方, 忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java 提供的 GC 功能可以 自动监测对象是否超过作用域从而达到自动回收内存的目的,Java 语言没有提供释放已分 配内存的显示操作方法。

4、列举出一些常用的类,包,接口,请各举 5 个

要让人家感觉你对 java ee 开发很熟,所以,不能仅仅只列 core java 中的那些东西,要多 列你在做 ssh 项目中涉及的那些东西。就写你最近写的那些程序中涉及的那些类。

常用的类:BufferedReader BufferedWriter FileReader FileWirter

StringInteger java.util.Date,System,Class,List,HashMap 常用的包:java.lang

java.io java.util

java.sql,javax.servlet,org.apache.strtuts.action,org.hibernate 常用的接口:Remote List Map Document

NodeList,Servlet,HttpServletRequest,HttpServletResponse,Transaction(Hibernate)、

Session(Hibernate),HttpSession

5 java 中有几种类型的流?JDK 为每种类型的流提供了一些抽象类以供继承, 请说出他们分别是哪些类?

字节流,字符流。字节流继承于 InputStream OutputStream,字符流继承于 InputStream Reader

OutputStreamWriter。在 java.io 包中还有许多其他的流,主要是为了提 高性能和使用方便。

6、多线程有几种实现方法?同步有几种实现方法?

多线程有两种实现方法,分别是继承 Thread 类与实现 Runnable 接口

5 / 10

java高级工程师-面试题及答案

一:选择题1.关于以下程序代码的说明正确的是(D)1.classHasStatic{2.privatestaticintx=100;3.publicstaticvoidmain(Stringargs[]){4.HasStatichs1=n
推荐度:
点击下载文档文档为doc格式
9xl0t9rfxk4x67j2pwjr92i2p9mf5d01dqi
领取福利

微信扫码领取福利

微信扫码分享