A、程序员必须穿件一个内存来释放内存 B、内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象
32、下面异常是属于Runtime Exception的是(B C)?(多选) A、ArithmeticException B、IllegalArgumentException C、NullPointerException D、BufferUnderflowException
33、Math.round(11.5)等于多少?Math.round(-11.5)等于多少(C) A、11,-11 B、11,-12 C、12,-11 D、12,-12
34、下列程序段输出的结果是:(B) Void complicatedexpression_r(){ int x=20,y=30; boolean b;
b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60; System.out.println(b) }
A、
true
B、 C、 D、 二、简答题
false 1 0
1 简述数据库事务的ACID属性指在DBMS中事务的四个特性:原子性(Atomicity)、
一致性(Consistency)、隔离性(Isolation)、持久性(Durability)
2 以下linux命令的作用:chmod pwd is mkdir 改变权限,查看路径,创建文件
夹
4 面向对象与面向过程的区别面向过程是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现;面向对象是把构成问题事务分解成各个对象,建立对象描叙某个事物在整个解决问题的步骤中的行为。
5 写出java异常处理的语句并描述各部分的作用
try{:开始捕获异常
}catch{:捕获到异常的处理代码块 }finally{:运行时必须执行的代码
throw:抛出异常
throws:在类定义时将类中产生的一场抛给上一级调用方法 6
程序运行的结果是:___good and gbc_________。
Public class Example{
String str=new String(\
public static void main(String args[]){
Example ex=new Example(); ex.change(ex.str,ex.ch);
System.out.print(ex.str+\
Sytem.out.print(ex.ch); }
Public void change(String str,char ch[]){
}
str=\ch[0]='g';
} 7 8
数据库正常启动所经历的几种为__STARTUP NOMOUNT 数据库实例启动、常用的两个List的非同步实现类是_______ArrayList、LinkedList ___________。
________STARTUP MOUNT - 数据库装载___、_____________、STARTUP OPEN 数据库打开。 9
Java中线程的四种状态分别是_运行_______、_______就绪______、挂起、结束;让线程
从运行状态转换为暂停状态的有___________睡眠__、等待。
12 java.io包中的______ObjectInputStream_____和___ObjectOutputSteam__________类主要用于对对象(Object)的读写。
13 谈谈hashmap和hashtable的区别,如何去遍历一个map 答:
Hashtable继承了Dictionary,是线程安全的,键值对中不能出现null。
Hashmap实现了Map接口,是Hashtable的轻量级实现(非线程安全的实现),即多个线程访问Hashmap时需要为其准备外同步,且Hashmap的键、值均可以为null。 遍历map有两种方式:keyset(效率低)和entryset(效率高),两种方式都需要创建Iterator迭代器对象,不同的是使用keyset需要从迭代器中获取map的key,并且通过key获取value(key=iterator.next(); value=map.get(key));使用entryset则需要从迭代器中获取Map.Entry对象,再从中获取map的key和value(Map.Entry
entry=(Map.Entry)iterator.next(); key=entry.getKey(); value=entry.getValue())。
Map map=new HashMap();
Iterator iterator=map.entrySet().iterator(); while(iterator.hasNext()){
Map.Entry entry=(Map.Entry)iterator.next(); Object key=entry.getKey(); Object value=entry.getValue(); }
Map map=new HashMap();
Iterator iterator=map.keySet().iterator(); while(iterator.hasNext){ Object key=iterator.next(); Object value=map.get(key); } 14 答:
synchronized同步代码块:synchronized(同步监视器){…}
synchronized修饰的同步方法:public synchronized 返回值 方法名(){…} wait();:wait方法必须在用有synchronized修饰的地方才能使用
notify();:唤醒了有相同同步监视器的wait(),从wait()的下一行代码开始执行
.说出线程同步的几个方法
notifyAll();:唤醒了所有调用wait()的方法 15
java中char占几个字节,为什么 节 16
. try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行?什么时候被执行?在return之前还是之后
答:会被执行,在return之后执行,finally{}中的语句只有在虚拟机停止的情况下才不执
行。
18 请阐述一下你对java多线程中同步的几种方式,区别,及其重要性。 (1) wait方法:
该方法属于Object的方法,wait方法的作用是使得当前调用wait方法所在部分(代码块)的线程停止执行,并释放当前获得的调用wait所在的代码块的锁,并在其他线程调用notify或者notifyAll方法时恢复到竞争锁状态(一旦获得锁就恢复执行)。 调用wait方法需要注意几点:
第一点:wait被调用的时候必须在拥有锁(即synchronized修饰的)的代码块中。 第二点:恢复执行后,从wait的下一条语句开始执行,因而wait方法总是应当在while循环中调用,以免出现恢复执行后继续执行的条件不满足却继续执行的情况。 第三点:若wait方法参数中带时间,则除了notify和notifyAll被调用能激活处于wait状态(等待状态)的线程进入锁竞争外,在其他线程中interrupt它或者参数时间到了之后,该线程也将被激活到竞争状态。
第四点:wait方法被调用的线程必须获得之前执行到wait时释放掉的锁重新获得才能够恢复执行。
(2) notify方法和notifyAll方法:
答: 2个字节。java是采用unicode编码,使用16位的编码空间,即每个字符都占两个字
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库java部分(7)在线全文阅读。
相关推荐: