Java面试宝典2014版(完整版)下载
27 、内部类可以引用它的包含类的成员吗?有没有什么限制? ................................. 26
28 、 Anonymous Inner Class ( 匿名内部类 ) 是否可以 extends( 继承 ) 其它类,是否可以 implements( 实现 )interface( 接口 )? .................................................................................. 27
29 、 super.getClass() 方法调用 ....................................................................................... 27
30 、 String 是最基本的数据类型吗 ? ............................................................................... 28
31 、 String s = "Hello";s = s + " world!"; 这两行代码执行后,原始的 String 对象中的内容到底变了没有? ............................................................................................................. 28
32 、是否可以继承 String 类 ? .......................................................................................... 29
33 、 String s = new String("xyz"); 创建了几个 String Object? 二者之间有什么区别? ............................................................................................................................................. 29
34 、 String 和 StringBuffer 的区别 .................................................................................. 30
35 、如何把一段逗号分割的字符串转换成一个数组 ? ................................................... 30
36、数组有没有length()这个方法? String 有没有length()这个方法? ..................... 31
37、下面这条语句一共创建了多少个对象:String s="a"+"b"+"c"+"d"; ..................... 31
38 、 try {} 里有一个 return 语句,那么紧跟在这个 try 后的 finally {} 里的 code 会不会被执行,什么时候被执行,在 return 前还是后 ? ........................................................... 31
39 、下面的程序代码输出的结果是多少? ..................................................................... 32
40 、 final, finally, finalize 的区别。 ................................................................................. 35
41 、运行时异常与一般异常有何异同? ......................................................................... 35
42 、 error 和 exception 有什么区别 ? .............................................................................. 35
43 、 Java 中的异常处理机制的简单原理和应用。 ....................................................... 35
44 、请写出你最常见到的 5 个 runtime exception 。 .................................................... 36
45 、 JAVA 语言如何进行异常处理,关键字: throws,throw,try,catch,finally 分别代表什么意义?在 try 块中可以抛出异常吗? ....................................................................... 36
46 、 java 中有几种方法可以实现一个线程?用什么关键字修饰同步方法 ? stop() 和 suspend() 方法为何不推荐使用? ................................................................................... 36
47 、 sleep() 和 wait() 有什么区别 ? .................................................................................. 38
48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 ..................... 41
49. 下面两个方法同步吗?(自己发明) ...................................................................... 41
50 、多线程有几种实现方法 ? 同步有几种实现方法 ? .................................................... 42
51 、启动一个线程是用 run() 还是 start()? . ................................................................... 42
52、当一个线程进入一个对象的一个synchronized 方法后,其它线程是否可进入此
53 、线程的基本概念、线程的基本状态以及状态之间的关系 ..................................... 43
54、简述synchronized和java.util.concurrent.locks.Lock的异同? ........................ 43
55 、设计 4 个线程,其中两个线程每次对 j 增加 1 ,另外两个线程对 j 每次减少 1 。写出程序。 ............................................................................................................................. 46
56、子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次,请写出程序。 ....................................... 48
57 、介绍 Collection 框架的结构 ..................................................................................... 56
58 、 Collection 框架中实现比较要实现什么接口 .......................................................... 56
59 、 ArrayList 和 Vector 的区别 ...................................................................................... 56
60 、 HashMap 和 Hashtable 的区别 ............................................................................... 57
61 、 List 和 Map 区别 ? .................................................................................................... 57
62 、 List, Set, Map 是否继承自 Collection 接口 ?.......................................................... 58
63 、 List 、 Map 、 Set 三个接口,存取元素时,各有什么特点? ................................ 58
64 、说出 ArrayList,Vector, LinkedList 的存储性能和特性 .......................................... 59
65 、去掉一个 Vector 集合中重复的元素 ....................................................................... 59
66 、 Collection 和 Collections 的区别。 ........................................................................ 59
67 、 Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢 ? 是用 == 还是 equals()? 它们有何区别 ? .................................................................................................. 60
68 、你所知道的集合类都有哪些?主要方法? ............................................................. 60
69 、两个对象值相同 (x.equals(y) == true) ,但却可有不同的 hash code ,这句话对不对 ? ....................................................................................................................................... 61
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! . 61
71 、说出一些常用的类,包,接口,请各举 5 个......................................................... 63
72 、 java 中有几种类型的流? JDK 为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类? ................................................................................................. 63
73 、字节流与字符流的区别 ............................................................................................. 63
74 、什么是 java 序列化,如何实现 java 序列化?或者请解释 Serializable 接口的作用。 ..................................................................................................................................... 65
75 、描述一下 JVM 加载 class 文件的原理机制 ? ......................................................... 66
76 、 heap 和 stack 有什么区别。 ................................................................................... 66
77 、 GC 是什么 ? 为什么要有 GC? .................................................................................. 66
78 、垃圾回收的优点和原理。并考虑 2 种回收机制。................................................. 66
79 、垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收? ......................................................................................... 66
80 、什么时候用 assert 。 ................................................................................................. 67
81 、 java 中会存在内存泄漏吗,请简单描述。 ............................................................ 68
82 、能不能自己写个类,也叫 java.lang.String ? ........................................................ 72
1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 ........ 77
2 、编写一个程序,将 d:\java 目录下的所有 .java 文件复制到 d:\jad 目录下,并将原来文件的扩展名从 .java 改为 .jad 。 ................................................................................. 79
3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC ”,4,应该截取“我AB ”,输入“我ABC汉DEF ”,6,应该输出“我ABC ”,而不是“我ABC+汉的半个”。 .................... 82
4 、有一个字符串,其中包含中文字符、英文字符和数字字符,请统计和打印出各个字符的个数。 ..................................................................................................................... 83
5 、说明生活中遇到的二叉树,用 java 实现二叉树 ...................................................... 84
6 、从类似如下的文本文件中读取出所有的姓名,并打印出重复的姓名和重复的次数,并按重复次数排序: ......................................................................................................... 91
7 、写一个 Singleton 出来。 ............................................................................................ 96
8 、递归算法题 1 ................................................................................................................ 99
9 、递归算法题 2 .............................................................................................................. 100
10 、排序都有哪几种方法?请列举。用 JAVA 实现一个快速排序。 ....................... 100
11 、有数组 a[n] ,用 java 代码将数组元素顺序颠倒 .................................................. 102
1. 判断第二个日期比第一个日期大 .............................................................................. 104
2. 用 table 显示 n 条记录,每 3 行换一次颜色,即 1 , 2 , 3 用红色字体, 4 , 5 , 6 用绿色字体, 7 , 8 , 9 用红颜色字体。 ....................................................................... 106
3 、 HTML 的 form 提交之前如何验证数值文本框的内容全部为数字 ? 否则的话提示用户并终止提交 ? ................................................................................................................. 107
4、请写出用于校验HTML文本框中输入的内容全部为数字的javascript代码 ..... 107
1 、 Tomcat 的优化经验 .................................................................................................. 108
2 、 HTTP 请求的 GET 与 POST 方式的区别 .............................................................. 108
3 、解释一下什么是 servlet; ........................................................................................... 108
4 、说一说 Servlet 的生命周期 ? .................................................................................... 109
5 、 Servlet 的基本架构 ................................................................................................... 109
6 、 SERVLET API 中 forward() 与 redirect() 的区别? ................................................ 109
7 、什么情况下调用 doGet() 和 doPost() ? .................................................................. 109
8 、 Request 对象的主要方法: ..................................................................................... 110
9 、 forward 和 redirect 的区别 ....................................................................................... 110
10、request.getAttribute()和 request.getParameter()有何区别? ............................ 111
11.jsp 有哪些内置对象 ? 作用分别是什么 ? 分别有什么方法? .................................. 111
12.jsp 有哪些动作 ? 作用分别是什么 ? .......................................................................... 112
13 、 JSP 的常用指令 ...................................................................................................... 112
14.JSP 中动态 INCLUDE 与静态 INCLUDE 的区别? ............................................. 112
15 、两种跳转方式分别是什么 ? 有什么区别 ? .............................................................. 113
16 、页面间对象传递的方法 ........................................................................................... 113
17、JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么? ................ 113
18 、 MVC 的各个部分都有那些技术来实现 ? 如何实现 ? ............................................ 113
19 、我们在 web 应用开发过程中经常遇到输出某种编码的字符,如 iso8859-1 等,如何输出一个某种编码的字符串? ............................................................................... 113
20 、现在输入 n 个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,提供 reset ......................................................... 114
1、用两种方式根据部门号从高到低,工资从低到高列出每个员工的信息。 ......... 114
2 、列出各个部门中工资高于本部门的平均工资的员工数和部门号,并按部门号排序 ........................................................................................................................................... 114
3 、存储过程与触发器必须讲,经常被面试到 ? ........................................................... 116
4 、数据库三范式是什么 ? ............................................................................................... 118
5 、说出一些数据库优化方面的经验 ? ........................................................................... 119
6 、 union 和 union all 有什么不同 ? ............................................................................... 121
8. 用一条 SQL 语句查询出每门课都大于 80 分的学生姓名 ....................................... 126
9. 所有部门之间的比赛组合 ............................................................................................ 127
10. 每个月份的发生额都比 101 科目多的科目 ............................................................. 127
11. 统计每年每月的信息 ................................................................................................. 129
12. 显示文章标题,发帖人、最后回复时间 .................................................................. 131
13. 删除除了 id 号不同 , 其他都相同的学生冗余信息 ................................................... 131
14. 航空网的几个航班查询题:...................................................................................... 132
15. 查出比经理薪水还高的员工信息: .......................................................................... 134
16 、求出小于 45 岁的各个老师所带的大于 12 岁的学生人数 .................................. 135
17. 求出发帖最多的人: ................................................................................................. 136
18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? ............................. 136
19 、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他用户。 ........................................................................................................................................... 137
20.xxx 公司的 sql 面试 .................................................................................................. 138
21 、注册 Jdbc 驱动程序的三种方式 ............................................................................ 139
22 、用 JDBC 如何调用存储过程 .................................................................................. 139
23 、 JDBC 中的 PreparedStatement 相比 Statement 的好处................................... 141
24. 写一个用 jdbc 连接并访问 oracle 数据的程序代码 ............................................. 141
25 、 Class.forName 的作用 ? 为什么要用 ? ................................................................... 141
26 、大数据量下的分页解决方法。 ............................................................................... 141
27、用 JDBC查询学生成绩单,把主要代码写出来(考试概率极大). ................... 142
28 、这段代码有什么不足之处 ? .................................................................................... 143
29 、说出数据连接池的工作机制是什么 ? .................................................................... 143
1 、 xml 有哪些解析技术 ? 区别是什么 ? ......................................................................... 144
2 、你在项目中用到了 xml 技术的哪些方面 ? 如何实现的 ? ........................................ 144
3 、用 jdom 解析 xml 文件时如何解决中文问题 ? 如何解析 ? ...................................... 144
4 、编程用 JAVA 解析 XML 的方式 . .............................................................................. 145
1 、谈谈你对 Struts 的理解。 ........................................................................................ 149
2 、谈谈你对 Hibernate 的理解。.................................................................................. 149
3 、 AOP 的作用。 ........................................................................................................... 150
4 、你对 Spring 的理解。 ............................................................................................... 150
5 、谈谈 Struts 中的 Action servlet 。 ........................................................................... 151
6 、 Struts 优缺点 优点: 1. 实现 MVC 模式,结构清晰 , 使开发者只关注业务逻辑的实现 . .................................................................................................................................. 151
7 、 STRUTS 的应用 ( 如 STRUTS 架构 ) ....................................................................... 153
8 、说说 struts1 与 struts2 的区别。 ............................................................................. 153
9 、 hibernate 中的 update() 和 saveOrUpdate() 的区别, session 的 load() 和 get() 的区别。 ................................................................................................................................... 154
10、简述 Hibernate和 JDBC的优缺点?如何书写一个 one to many配置文件. . 154
11 、 iBatis 与 Hibernate 有什么不同 ? .......................................................................... 154
12 、写 Hibernate 的一对多和多对一双向关联的 orm 配置 ? .................................... 154
12.1 、 hibernate 的 inverse 属性的作用 ? ..................................................................... 154
13 、在 DAO 中如何体现 DAO 设计模式 ? ................................................................... 155
14 、 spring+Hibernate 中委托方案怎么配置 ? ............................................................. 155
15 、 spring+Hibernate 中委托方案怎么配置 ? ............................................................. 155
16.hibernate 进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有一个实体类与之对应如何解决; ................................................................................... 155
17. 介绍一下 Hibernate 的二级缓存 .............................................................................. 155
18 、 Spring 的依赖注入是什么意思 ? 给一个 Bean 的 message 属性 , 字符串类型 , 注入值为 "Hello" 的 XML 配置文件该怎么写 ? .................................................................. 158
19 、 Jdo 是什么 ? ............................................................................................................. 158
20 、什么是 spring 的 IOC AOP .................................................................................... 158
21 、 STRUTS 的工作流程! .......................................................................................... 158
1 、 UML 方面 ................................................................................................................... 158
2 、 j2ee 常用的设计模式?说明工厂模式。 ................................................................ 158
1 、 BS 与 CS 的联系与区别。 ....................................................................................... 159
1.硬件环境不同 : ...................................................................................................... 159
2.对安全要求不同 ................................................................................................... 160
3.对程序架构不同 ................................................................................................... 160
4.软件重用不同 ....................................................................................................... 160
5.系统维护不同 ....................................................................................................... 160
6.处理问题不同 ....................................................................................................... 160
7.用户接口不同 ....................................................................................................... 160
2 、应用服务器与 WEB SERVER 的区别? ................................................................ 161
3 、应用服务器有那些? ................................................................................................. 161
4 、 J2EE 是什么? .......................................................................................................... 161
5 、 J2EE 是技术还是平台还是框架?什么是 J2EE .................................................... 161
6 、请对以下在 J2EE 中常用的名词进行解释 ( 或简单描述 ) ....................................... 161
7 、如何给 weblogic 指定大小的内存 ? ......................................................................... 162
8 、如何设定的 weblogic 的热启动模式 ( 开发模式 ) 与产品发布模式 ? ....................... 162
9 、如何启动时不需输入用户名与密码 ? ....................................................................... 162
10、在weblogic管理制台中对一个应用域(或者说是一个网站,Domain)进行jms及ejb或连接池等相关信息进行配置后,实际保存在什么文件中? ........................................ 162
11 、说说 weblogic 中一个 Domain 的缺省目录结构 ? 比如要将一个简单的 helloWorld.jsp 放入何目录下 , 然的在浏览器上就可打入 http:// 主机 : 端口号 //helloword.jsp 就可以看到运行结果了 ? 又比如这其中用到了一个自己写的 javaBean 该如何办 ? ......................................................................................................................... 162
12 、在 weblogic 中发布 ejb 需涉及到哪些配置文件 .................................................. 163
13 、如何在 weblogic 中进行 ssl 配置与客户端的认证配置或说说 j2ee( 标准 ) 进行 ssl 的配置 ? ............................................................................................................................. 163
1 、 EJB 是基于哪些技术实现的?并说出 SessionBean 和 EntityBean 的区别, StatefulBean 和 StatelessBean 的区别。 ................................................................... 163
2 、简要讲一下 EJB 的 7 个 Transaction Level? ...................................................... 164
3 、 EJB 与 JAVA BEAN 的区别?................................................................................. 164
4 、 EJB 包括( SessionBean,EntityBean )说出他们的生命周期,及如何管理事务的? ........................................................................................................................................... 164
5 、 EJB 容器提供的服务................................................................................................. 164
6 、 EJB 的激活机制 ........................................................................................................ 164
7 、 EJB 的几种类型 ........................................................................................................ 165
1 、 WEB SERVICE 名词解释。 JSWDL 开发包的介绍。 JAXP 、 JAXM 的解释。 SOAP 、 UDDI,WSDL 解释。 ........................................................................................................ 165
2 、 CORBA 是什么 ? 用途是什么 ? ................................................................................. 165
3. Linux ............................................................................................................................. 166
4 、 LINUX 下线程, GDI 类的解释。 ............................................................................ 166
5. 问得稀里糊涂的题 ...................................................................................................... 166
6 、四种会话跟踪技术 ..................................................................................................... 166
1 、请用英文简单介绍一下自己 . .................................................................................... 166
2、请把http://tomcat.apache.org/ 首页的这一段话用中文翻译一下? .................... 166
3 、美资软件公司 JAVA 工程师电话面试题目 ............................................................. 167