JAVA基础

上一篇 / 下一篇  2014-08-21 22:30:06 / 个人分类:Java

1.描述软件产生内存泄露的原因以及检查方式。(可以结合一种开发语言进行描述)

内存泄露的原因,主要是由于开发过程当中申请了计算机资源(例如对象、内存等),但是使用资源完成以后没有及时释放资源导致的。例如在C语言当中使用了malloc申请了内存,但是未使用free来释放内存。


2.简述什么是值传递,什么是地址传递,两者区别是什么?

值传递主调函数传递给被调函数的是值的拷贝,不是原值;地址传递主调函数传递给被调函数的是值的地址。区别是值传递被调函数中的操作不改变主调函数的值,而地址传递则不同。


3.简述什么是存储过程和触发器?

存储过程:是数据库中的一个对象,Transact-SQL 语句的预编译集合,这些语句在一个名称下存储并作为一个单元进行处理。(可以理解为C语言中的函数,有参数、返回值等函数特性)

触发器是一种特殊类型的存储过程,当使用下面的一种或多种数据修改操作在指定表中对数据进行修改时,触发器会生效:UPDATEINSERT 或 DELETE


4.&和&&的区别

相同点:


5.switch能否作用在byte,long,String上?


6.使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?


7."=="和equals方法的区别


8.作用域public protected private default的区别


9.Java中实现多态的区别是?


10.Java异常处理机制,及场见到的runtime exception


11.Java中有几个方法可以实现一个线程


12.ArrayList 和 Vector的区别



13.hashmap和hashtable的区别


14.什么是序列化,如何实现Java序列化


15.描述一下JVM加载class文件的远离机制


16.heap和stack有什么区别


17.GC是什么,为什么要有GC?


18.垃圾回收的优点和原理


19.说出一些常用的类,包,接口


20.写一个单例


21.排序


22.oracle 查询怎么查询某条数据在第几行

select t.*,rownum rn from table1 t    --rownum就是记录所在的行数

你是指定ID去查询,得到的记录只有一条,所以rownum始终是1了,你想要的结果应该是
select tt.*,tt.rn from
(select t.*,row_number() over (order by id) rn from table1 t ) tt
where tt.id = 你要查询的ID值
23.servlet生命周期
包括加载、实例化、初始化、处理请求、服务结束
不同的servlet实例:容器装载servlet-创建servlet实例-初始化servlet对应servlet的init()方法,调用service()方法,结束servlet对应的destroy()方法
24.存储过程和函数的区别
存储过程是用户定义的一系列sql语句的集合,设计特定表或其他对象的任务,用户可以调用村存储过程;而函数通常识数据库已定义的方法,它接收参数并返回某种类型的值并且不设计特定用户表


TAG:

常春华的个人空间 引用 删除 常春华   /   2016-09-08 13:54:12
虽然一直在看java的书,看这几个问题真把我问住了。
常春华的个人空间 引用 删除 常春华   /   2016-09-08 13:53:31
5
 

评分:0

我来说两句

Open Toolbar