15 个必须知道的 Java 面试问题(2年工作经验)

红薯 发布于 2011/03/30 08:56
阅读 17K+
收藏 23
【Java核心】
1) What is the purpose of serialization?
2) What is the difference between JDK and JRE?
3) What is the difference between equals and ==?
4) When will you use Comparator and Comparable interfaces?
5) What is the wait/notify mechanism?
6) What is the difference between checked and unchecked exceptions?
7) What is the difference between final, finally and finalize?

【Java企业版】
8) What is the difference between web server and app server?
9) Explain the Struts1/Struts2/MVC application architecture?
10) What is the difference between forward and sendredirect?

【一般问题】
11) How does a 3 tier application differ from a 2 tier one?
12) How does the version control process works?
13) What is the difference between JAR and WAR files?

【数据库】
14) What is a Left outer join?
15) What is the difference between UNION and UNION ALL?
加载中
1
zhao_rong
zhao_rong

捧场:
【Java核心】
1) What is the purpose of serialization?
为了传输,将java对象串行化以后变成01串方便传输或者保存,可以很容易的反串行变回原来的java对象。其中@tranxx的一个什么注解可以让java忽略某个属性不做串行化,比如某个巨大的字符串,有效减小串行化后的数据量。

2) What is the difference between JDK and JRE?
JDK是有开发功能的,比如javac什么的,javap什么的;JRE就是一个runtime environment,跑java字节码的

3) What is the difference between equals and ==?
==是比较引用,equals是Object类的一个方法,可以通过重写equals方法达到比较内容的目的

4) When will you use Comparator and Comparable interfaces?
比较大小有的很容易,比如说2>1, "abc">"aba", 这种可以通过自然特性比较的容易理解,但是如果比较两个对象的时候怎么比呢,比如说比较两个人,是比年龄?身高?还是体重?
所以可以通过实现Comparable来实现比较大小的功能,还是用人来说,就比较年龄,A的年龄比B大,就认为A>B
这样的好处有很多,比如说实现了Comparable的以后,就可以用Collections.sort方法来排序。
问题是并不是每次都以年龄比较的,如果下次要比较体重怎么办?那么就要写一个实现了Comparator的比较器来比较传入的两个对象的大小。所以用 Collections.sort方法排序的时候传入一个List和一个Comparator

5) What is the wait/notify mechanism?
wait和notify的机制。。我没深入研究过,不过我想应该是通过共享锁的方法,比如说将某个对象设为锁(用那个synchronized关键字),某个线程占用了该锁以后,其它线程无法获得该锁就等着,知道那个占用线程释放锁,唤醒等待线程。
这个瞎掰的,按照对操作系统的的了解吹吹。。。

6) What is the difference between checked and unchecked exceptions?
我不知道什么叫checked 和unchecked exception,我只知道有check exception 和runtime exception,前者必须用try catch来处理的,后者不需要,比如数组越界之类和除以0这样的异常就是runtime exception。

7) What is the difference between final, finally and finalize?
这个太普通了,要写起来也太多了,只说一下finally的时候也可以没有catch,但是必须有try
finalize方法在对象被回收时调用,但是被调用的时候不代表一定马上就被回收,且他只会执行一次,比如说自己手动调用一次以后,等他被回收的时候也不会被执行了。

【Java企业版】
8) What is the difference between web server and app server?
web server: 就是提供一个网站的,比如apache,IIS等,处理一个http 请求,将静态网页或者图片什么的发回去
app server:可以执行程序的,比如说tomcat什么的。
这也是我瞎掰的。。。觉得自己说的不够清楚。。

9) Explain the Struts1/Struts2/MVC application architecture?
这个要写就太多了,就是模型-视图-控制三层架构,比如Struts2中,FilterAction对应着Control,Action返回的那些result对应着视图,strut2支持的视图层就多了,比如jsp,甚至是pdf等。。。模型就对应着后来的业务逻辑吧

10) What is the difference between forward and sendredirect?
sendredirect重新开一个request

【一般问题】
11) How does a 3 tier application differ from a 2 tier one?
三层模型和两层模型的区别?什么业务逻辑和展示层分离等等,有效分工,有利于后期维护等等。。。

12) How does the version control process works?
版本控制,目前有两大类吧,CVS,SVN等属于集中式的,Git属于分布式的,目前Git很火啊。
process就是check out > update > modify > check in, 如果发现冲突那么 merge > check in.

13) What is the difference between JAR and WAR files?
jar和war都是zip格式压缩,war是web项目压缩的意思,里面有WEB-INF文件夹,下面有web.xml配置文件

【数据库】
14) What is a Left outer join?
左外连接,就是将左表对应于右表中没有关联的数据也列出来,比如
表 A
a b
c d
e f
表 B
b 1
d 2
c 3
A left outer join B的结果为:
a b 1
c d 2
e f
好久没有写SQL语句了,不记得是不是这样了。。
15) What is the difference between UNION and UNION ALL?
前者去除重复记录,后者不去除

 

0
JavaGG
JavaGG

英文的。。。

0
rip
rip

没用工作经验,只有两年学习经验 试试吧,可能很多地方都不够准确甚至错误,请各位多多指教

1) 串行化是为了在对象被回收后保存对象实例变量的值

2) JDK包含JRE以及一些开发工具,可以直接用来做开发,而JRE只是Java程序的运行环境

3) equals用来检验对象是否相同,而==用来检验基础数据类型数据是否相等

4) 当“比较”需要进行一些额外运算的时候,使用Comparable接口,只有简单比较时可以用Comparator

5) 等待/唤醒机制就是通过线程锁实现线程之间的同步

6) checked exception是指在引用时已经被注明的可能抛出的异常,必须写在try catch块里或者继续向上抛出;而unchecked exception是指在运行之前谁都不知道有可能会抛出的异常,是RuntimeException的子类

7) final是修饰符,表明一个类无法被继承;finally是try catch块后追加的保证被执行的代码块;finalize是在一个对象被回收之前被执行的方法,是在Object类中定义的

0
潦倒糊涂

Can you give us some detail answers?

0
奋斗的小牛
奋斗的小牛

这是2年工作经验需要知道的,那么五年工作经验要知道什么呢 ?

0
micheal_ren
micheal_ren

很有收获

0
智商已暴露
智商已暴露

我什么都不知道,我什么也没看见。

0
java开发
java开发

很基础的东西,搞java必须懂的

0
深圳土豆
深圳土豆

学习,学习。。。

返回顶部
顶部