Oracle 数据库:
在 ORACLE大数据量下的分页解决方法。一般用截取 ID 方法,还有是三层嵌套方法。
截取 ID 的方法
select * from emp a, (select empno,rownum as num from emp)b where
a.empno=b.empno and b.num between 5 and 7;
三层嵌套
SELECT * FROM ( SELECT A.*, rownum r FROM ( SELECT * FROM emp ) A WHERE
rownum <=7 ) B WHERE r >5;
4. list.map.set 的存储特点 ?
List 以特定次序来持有元素 , 可有重复元素 .
Set 无法拥有重复元素 , 内部排序 .
Map 保存 key-value 值,value 可多值
5. final,finally,finaliz 的区别
final —修饰符(关键字)如果一个类被声明为 final ,意味着它不能再派生出新的子
类,不能作为父类被继承。 因此一个类不能既被声明为 abstract 的,又被声 明为 final
的。将变量或方法声明为 final ,可以保证它们在使用中不被改变。被声明为 final 的变量
必须在声明时给定初值,而在以后的引用中只能读取,不可修改 被声明为 final 的方法
也同样只能使用,不能重载。
finally —再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异
常 ,那么相匹配的 catch 子句就会执行, 然后控制就会进入 finally 块(如果有的话) 。
finalize —方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中
清除出去之前做必要的清理工作。 这个方法是由垃圾收集器在确定这个对象没有被引用时对
这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 ;
finalize() 方法以整理系统资源或者执行其他清理工作 finalize() 方法是在垃圾收集器
删除对象之前对这个对象调用的。
6. arraylist 和 vector 的区别 ?
1). 同步性 :Vector 是线程安全的,也就是说是同步的,而 ArrayList 是线程不安全的,
不是同步的
2). 数据增长 : 当需要增长时 ,Vector 默认增长为原来一培,而 ArrayList 却是原来的一半
7. 说出 ArrayList,Vector, LinkedList 的存储性能和特性?
1). ArrayList 采用的是数组形式来保存对象的,这种方式将对象放在连续的位置中,
所以最大的缺点就是插入删除时非常麻烦 LinkedList 采用的将对象存放在独立
的空间中,而且在每个空间中还保存下一个链接的索引 但是缺点就是查找非常麻
烦 要丛第一个索引开始
2). ArrayList 和 Vector 都是用数组方式存储数据 , 此数组元素数要大于实际的存储空
间以便进行元素增加和插入操作 , 他们都允许直接用序号索引元素 , 但是插入数据
元素涉及到元素移动等内存操作 , 所以索引数据快而插入数据慢 .
3). Vector 使用了 sychronized 方法 ( 线程安全 ), 所以在性能上比 ArrayList 要差些 .
4). LinkedList 使用双向链表方式存储数据 , 按序号索引数据需要前向或后向遍历数
据,所以索引数据慢 , 是插入数据时只需要记录前后项即可 , 所以插入的速度快 .