史上最全java面试题之JavaSE考试题参考答案.docx

上传人:b****5 文档编号:6353347 上传时间:2023-01-05 格式:DOCX 页数:8 大小:17.92KB
下载 相关 举报
史上最全java面试题之JavaSE考试题参考答案.docx_第1页
第1页 / 共8页
史上最全java面试题之JavaSE考试题参考答案.docx_第2页
第2页 / 共8页
史上最全java面试题之JavaSE考试题参考答案.docx_第3页
第3页 / 共8页
史上最全java面试题之JavaSE考试题参考答案.docx_第4页
第4页 / 共8页
史上最全java面试题之JavaSE考试题参考答案.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

史上最全java面试题之JavaSE考试题参考答案.docx

《史上最全java面试题之JavaSE考试题参考答案.docx》由会员分享,可在线阅读,更多相关《史上最全java面试题之JavaSE考试题参考答案.docx(8页珍藏版)》请在冰豆网上搜索。

史上最全java面试题之JavaSE考试题参考答案.docx

史上最全java面试题之JavaSE考试题参考答案

JavaSE考试题(时间150分钟)

一.选择题(75分)

1.在Java中负责对字节码解释执行的是(B)

A.垃圾回收器

B.虚拟机

C.编译器

D.多线程机制

2.BufferedReader的父类是(B)

A.

FileReader

B.

Reader

C.

PipedReader

D.

InputStreamReader

3.在读字符文件Post.dat时,使用该文件作为参数的类(A)

A.BufferedReader

B.DataInputStream

C.DataOutputStream

D.FileInputStream

4.下列不是InputStream子类的是(C)

A.FileInputStream

B.ObjectInputStream

C.CharInputStream

D.ZipInputStream

5.下列方法中可以用来创建一个新线程的是(D)

A.实现java.lang.Runnable接口并重写start()方法

B.实现java.lang.Runnable接口并重写run()方法

C.继承java.lang.Thread类并重写start()方法

D.继承java.lang.Thread类并重写run()方法

6.当启动Applet程序时,首先调用的方法是(B)

A.stop()

B.init()

C.start()

D.destroy()

7.序列化一个类时,如果要隐藏某个成员,使之在反序列化时不能看到该成员的真实

数据,应当使用的关键字是(C)

A.hiddern

B.private

C.transient

D.destroy

8将键值对(key--value)保存到映射(Map)对象中的方法是(B)

A.add(Objectkey,Objectvalue)

B.put(Objectkey,Objectvalue)

C.insert(Objectkey,Objectvalue)

D.get(Objectkey,Objectvalue)

9.一个javaApplication运行后,在系统中是作为一个(B)

A.线程

B.进程

C.进程或线程

D.不可预知

10.下列关于线程调度的叙述中,错误的是:

(D)

A.调用线程的sleep()方法,可以使比当前线程优先级低的线程获

得运行机会

B.调用线程的yield()方法,只会使与当前线程相同优先级的线程获

得运行机会

C.当有比当前线程优先级高的线程出现时,高优先级的线程将抢

占CPU并运行

D.具有相同优先级的多个线程的调度一定是分时的

11.下列关于线程优先级别的说法中,正确的是(C)

A.线程的优先级是不能改变的

B.线程的优先级在创建线程时设定

C.在创建线程后的任何时候都可以设置

D.B,C

12.实现一个线程的创建方法有几种(B)

A.一种

B.二种

C.三种

D.四种

13.下列关于泛型的说法,错误的是(B)

A、泛型是一种参数化类型

B、可以取代继承机制。

C、避免了运行时进行类型转换可能的潜在性错误

D、增强了程序的灵活性和安全性

14.以下那个是java.io包中一个兼有输入输出功能的类(C)

A.Object

B.Serializable

C.RandomAccessFile

D.Java.io中不存在这样的类

15.要串行化某些类的对象,这些类就必须实现(A)

A.Serializable接口

B.java.io.Comparable接口

C.java.io.DataImput接口

D.DataOutput接口

16.Oracle数据库的JDBC驱动程序类名及其完整包路径为(D)

A.jdbc.driver.oracle.OracleDriver

B.jdbc.oracle.driver..OracleDriver

C.driver.oracle.jdbc.OracleDriver

D.oracle.jdbc.driver.OracleDriver

17.下列数组a中,能够在程序运行时动态调整大小的是(C)

A.int[]a

B.String[]a

C.A=newArrayList()

D.A=newArray()

参考答案:

classWordDisplayextendsThread{

privateStringtext二"大连是一个美丽的海滨城市”

publicvoidrun(){

for(inti=1;i<=text.length();i++){try{

System.out.println(text.substring(0,i));

sleep(IOOO);/休眠1s

}

catch(InterruptedExceptione){

e.print

}

}

}

}

classWordDisplayimplementsRunnable{

privateStringtext="大连是一个美丽的海滨城市

publicvoidrun(){

for(inti=1;i<=text.length();i++){

try{

System.out.println(text.substring(0,i));

sleep(IOOO);/休眠1s

}catch(InterruptedExceptione){

}

}

}

}

2.编写BankAccount类,要求如下:

A.该类由此款人姓名(Stringname),存款余额(doublebalance),存期(intyear)及年利

率(doublerate)四个数据成员,其中年利率的默认值为0.03.

B.该类有两个重载的构造方法.其中一个构造方法不含参数,设置默认的存款为

10元,存期一年;另一个构造函数包含二个用于创建对象时

设置存款额与存期的参数。

C.该类有三个方法:

存款(save)取款(fetch)及计算存期满后的总金额(calcTotal).

D.创建一个账号fans创建时即(利用构造函数)存入1000元,存期3年,后又存入

2000元(利用save方法),计算存期满后的总金额(利用calcTotal方法)

参考答案:

publicclassBankAccount{

privateStringname;//姓名(账号)

privatedoublebalanee;/存款余额

privateintyear;//存期

privatedoublerate=0.03;/年利率

//构造方法

publicBankAccount(Stringname){

this(name,10.0,1);/默认存款10元,存期1年

}

//构造方法

publicBankAccount(Stringname,doubledeposit,intyear){

this.name=name;this.balance=deposit;

this.year=year;

}

//存款

publicvoidsave(doubledeposit){

this.balance+=deposit;

}

//取款

publicdoublefetch(doublereduce)throwsException{if(this.balance>=reduce){

this.balanee-二reduce;/余额

returnreduce;

}

else{

thrownewException(”不能透支!

”);

}

}

//存期满后的总金额

publicdoublecalcTotal(){doubletotal=balance;

for(inti=1;i<=year;i++){total=total*(1+rate);

}

returntotal;

}

publicstaticvoidmain(String[]args){

//TODOAuto-generatedmethodstub

//测试用

BankAccountfans=newBankAccount("fans",1000,1);fans.save(2000);

doubletotalMoney=fans.calcTotal();System.out.println("totalMoney==>"+totalMoney);

}

}

附加题(选作):

3.编写一个加密类Ecryption,在其中实现对字符串的加密和解密方法。

加密原理是:

加密后的字符串的第一个字符是原字符串的最后一个字符,其余

的每个字符是对应的原字符串中的前一个字符的值加上3。

比如:

“welcome“,末尾的字符为''

“welcom“依次加上3后成为“zhofrp“,故加密后的结果为“ezhofrp

a

参考答案:

classEcryption{

//加密方法:

输入明文,返回密文

publicStringencrypt(Stringsource){

//加密代码

}

//解密方法:

输入密文,返回明文

publicStringdecrypt(Stringdest){

//解密代码

}

}

publicclassEncryptDecrypt{

/**

*@paramargs

*/

publicstaticvoidmain(String[]args){

//TODOAuto-generatedmethodstub

Stringsource="Apple12大连";

Stringdest=encrypt(source);

System.out.println(source+"加密==>"+dest);

StringresultSource=decrypt(dest);

System.out.println(dest+"解密==>"+resultSource);

}

//加密函数

staticpublicStringencrypt(Stringstr){

StringBuilderresult=new

StringBuilder(str.substring(str.length()-1));〃取最后一个字符放到结果字符串的开头

for(inti=0;i

charc=(char)(str.charAt(i)+3);〃取出第i个字符;result.append(c);

}

returnresult.toString();

}

//解密函数

staticpublicStringdecrypt(Stringstr){

StringBuilderresult=newStringBuilder();//取最后一个字符放到结果字符串的开头

for(inti=1;i

charc=(char)(str.charAt(i)-3);〃取出第i个字符;result.append(c);

}

result.append(str.charAt(O));/原来第一个字符到现在最后一个字符

returnresult.toString();

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 面试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1