Java面试宝典.docx
- 文档编号:15040982
- 上传时间:2023-06-29
- 格式:DOCX
- 页数:193
- 大小:158.96KB
Java面试宝典.docx
《Java面试宝典.docx》由会员分享,可在线阅读,更多相关《Java面试宝典.docx(193页珍藏版)》请在冰点文库上搜索。
Java面试宝典
Java面试宝典
一.Java基础部分2
1、一个".java"源文件中是否可以包括多个类(不是内部类)?
有什么限制?
2
2、Java有没有goto?
2
3、说说&和&&的区别。
2
4、在JAVA中如何跳出当前的多重嵌套循环?
2
5、switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
2
6、shorts1=1;s1=s1+1;有什么错?
shorts1=1;s1+=1;有什么错?
2
7、char型变量中能不能存贮一个中文汉字?
为什么?
2
8、用最有效率的方法算出2乘以8等於几?
2
9、请设计一个一百亿的计算器2
10、使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变?
2
11、"=="和equals方法究竟有什么区别?
2
12、静态变量和实例变量的区别?
2
13、是否可以从一个static方法内部发出对非static方法的调用?
2
14、Integer与int的区别2
15、Math.round(11.5)等於多少?
Math.round(-11.5)等於多少?
2
16、下面的代码有什么不妥之处?
2
17、请说出作用域public,private,protected,以及不写时的区别2
18、Overload和Override的区别。
Overloaded的方法是否可以改变返回值的类型?
2
19、构造器Constructor是否可被override?
2
20、接口是否可继承接口?
抽象类是否可实现(implements)接口?
抽象类是否可继承具体类(concreteclass)?
抽象类中是否可以有静态的main方法?
2
21、写clone()方法时,通常都有一行代码,是什么?
2
22、面向对象的特征有哪些方面2
23、java中实现多态的机制是什么?
2
24、abstractclass和interface有什么区别?
2
25、abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?
2
26、什么是内部类?
StaticNestedClass和InnerClass的不同。
2
27、内部类可以引用它的包含类的成员吗?
有没有什么限制?
2
28、AnonymousInnerClass(匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
2
29、super.getClass()方法调用2
30、String是最基本的数据类型吗?
2
31、String s = "Hello";s = s + " world!
";这两行代码执行后,原始的String对象中的内容到底变了没有?
2
32、是否可以继承String类?
2
33、Strings=newString("xyz");创建了几个StringObject?
二者之间有什么区别?
2
34、String和StringBuffer的区别2
35、如何把一段逗号分割的字符串转换成一个数组?
2
36、数组有没有length()这个方法?
String有没有length()这个方法?
2
37、下面这条语句一共创建了多少个对象:
Strings="a"+"b"+"c"+"d";2
38、try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,什么时候被执行,在return前还是后?
2
39、下面的程序代码输出的结果是多少?
2
40、final,finally,finalize的区别。
2
41、运行时异常与一般异常有何异同?
2
42、error和exception有什么区别?
2
43、Java中的异常处理机制的简单原理和应用。
2
44、请写出你最常见到的5个runtimeexception。
2
45、JAVA语言如何进行异常处理,关键字:
throws,throw,try,catch,finally分别代表什么意义?
在try块中可以抛出异常吗?
2
46、java中有几种方法可以实现一个线程?
用什么关键字修饰同步方法?
stop()和suspend()方法为何不推荐使用?
2
47、sleep()和wait()有什么区别?
2
48、同步和异步有何异同,在什么情况下分别使用他们?
举例说明。
2
49.下面两个方法同步吗?
(自己发明)2
50、多线程有几种实现方法?
同步有几种实现方法?
2
51、启动一个线程是用run()还是start()?
.2
52、当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
2
53、线程的基本概念、线程的基本状态以及状态之间的关系2
54、简述synchronized和java.util.concurrent.locks.Lock的异同?
2
55、设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。
写出程序。
2
56、子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次,请写出程序。
2
57、介绍Collection框架的结构2
58、Collection框架中实现比较要实现什么接口2
59、ArrayList和Vector的区别2
60、HashMap和Hashtable的区别2
61、List和Map区别?
2
62、List,Set,Map是否继承自Collection接口?
2
63、List、Map、Set三个接口,存取元素时,各有什么特点?
2
64、说出ArrayList,Vector,LinkedList的存储性能和特性2
65、去掉一个Vector集合中重复的元素2
66、Collection和Collections的区别。
2
67、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?
是用==还是equals()?
它们有何区别?
2
68、你所知道的集合类都有哪些?
主要方法?
2
69、两个对象值相同(x.equals(y)==true),但却可有不同的hashcode,这句话对不对?
2
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常!
2
71、说出一些常用的类,包,接口,请各举5个2
72、java中有几种类型的流?
JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
2
73、字节流与字符流的区别2
74、什么是java序列化,如何实现java序列化?
或者请解释Serializable接口的作用。
2
75、描述一下JVM加载class文件的原理机制?
2
76、heap和stack有什么区别。
2
77、GC是什么?
为什么要有GC?
2
78、垃圾回收的优点和原理。
并考虑2种回收机制。
2
79、垃圾回收器的基本原理是什么?
垃圾回收器可以马上回收内存吗?
有什么办法主动通知虚拟机进行垃圾回收?
2
80、什么时候用assert。
2
81、java中会存在内存泄漏吗,请简单描述。
2
82、能不能自己写个类,也叫java.lang.String?
2
83.Java代码查错2
二.算法与编程2
1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。
2
2、编写一个程序,将d:
\java目录下的所有.java文件复制到d:
\jad目录下,并将原来文件的扩展名从.java改为.jad。
2
3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉的半个”。
2
4、有一个字符串,其中包含中文字符、英文字符和数字字符,请统计和打印出各个字符的个数。
2
5、说明生活中遇到的二叉树,用java实现二叉树2
6、从类似如下的文本文件中读取出所有的姓名,并打印出重复的姓名和重复的次数,并按重复次数排序:
2
7、写一个Singleton出来。
2
8、递归算法题12
9、递归算法题22
10、排序都有哪几种方法?
请列举。
用JAVA实现一个快速排序。
2
11、有数组a[n],用java代码将数组元素顺序颠倒2
12.金额转换,阿拉伯数字的金额转换成中国传统的形式如:
(¥1011)->(一千零一拾一元整)输出。
2
三.html&JavaScript&ajax部分2
1.判断第二个日期比第一个日期大2
2.用table显示n条记录,每3行换一次颜色,即1,2,3用红色字体,4,5,6用绿色字体,7,8,9用红颜色字体。
2
3、HTML的form提交之前如何验证数值文本框的内容全部为数字?
否则的话提示用户并终止提交?
2
4、请写出用于校验HTML文本框中输入的内容全部为数字的javascript代码2
5、说说你用过那些ajax技术和框架,说说它们的区别2
四.Javaweb部分2
1、Tomcat的优化经验2
2、HTTP请求的GET与POST方式的区别2
3、解释一下什么是servlet;2
4、说一说Servlet的生命周期?
2
5、Servlet的基本架构2
6、SERVLETAPI中forward()与redirect()的区别?
2
7、什么情况下调用doGet()和doPost()?
2
8、Request对象的主要方法:
2
9、forward和redirect的区别2
10、request.getAttribute()和request.getParameter()有何区别?
2
11.jsp有哪些内置对象?
作用分别是什么?
分别有什么方法?
2
12.jsp有哪些动作?
作用分别是什么?
2
13、JSP的常用指令2
14.JSP中动态INCLUDE与静态INCLUDE的区别?
2
15、两种跳转方式分别是什么?
有什么区别?
2
16、页面间对象传递的方法2
17、JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?
2
18、MVC的各个部分都有那些技术来实现?
如何实现?
2
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
2
20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,提供reset2
五.数据库部分2
1、用两种方式根据部门号从高到低,工资从低到高列出每个员工的信息。
2
2、列出各个部门中工资高于本部门的平均工资的员工数和部门号,并按部门号排序2
3、存储过程与触发器必须讲,经常被面试到?
2
4、数据库三范式是什么?
2
5、说出一些数据库优化方面的经验?
2
6、union和unionall有什么不同?
2
7.分页语句2
8.用一条SQL语句查询出每门课都大于80分的学生姓名2
9.所有部门之间的比赛组合2
10.每个月份的发生额都比101科目多的科目2
11.统计每年每月的信息2
12.显示文章标题,发帖人、最后回复时间2
13.删除除了id号不同,其他都相同的学生冗余信息2
14.航空网的几个航班查询题:
2
15.查出比经理薪水还高的员工信息:
2
16、求出小于45岁的各个老师所带的大于12岁的学生人数2
17.求出发帖最多的人:
2
18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决?
2
19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他用户。
2
20.xxx公司的sql面试2
21、注册Jdbc驱动程序的三种方式2
22、用JDBC如何调用存储过程2
23、JDBC中的PreparedStatement相比Statement的好处2
24.写一个用jdbc连接并访问oracle数据的程序代码2
25、Class.forName的作用?
为什么要用?
2
26、大数据量下的分页解决方法。
2
27、用JDBC查询学生成绩单,把主要代码写出来(考试概率极大).2
28、这段代码有什么不足之处?
2
29、说出数据连接池的工作机制是什么?
2
30、为什么要用ORM?
和JDBC有何不一样?
2
六.XML部分2
1、xml有哪些解析技术?
区别是什么?
2
2、你在项目中用到了xml技术的哪些方面?
如何实现的?
2
3、用jdom解析xml文件时如何解决中文问题?
如何解析?
2
4、编程用JAVA解析XML的方式.2
5、XML文档定义有几种形式?
它们之间有何本质区别?
解析XML文档有哪几种方式?
2
七.流行的框架与新技术2
1、谈谈你对Struts的理解。
2
2、谈谈你对Hibernate的理解。
2
3、AOP的作用。
2
4、你对Spring的理解。
2
5、谈谈Struts中的Actionservlet。
2
6、Struts优缺点优点:
1.实现MVC模式,结构清晰,使开发者只关注业务逻辑的实现.2
7、STRUTS的应用(如STRUTS架构)2
8、说说struts1与struts2的区别。
2
9、hibernate中的update()和saveOrUpdate()的区别,session的load()和get()的区别。
2
10、简述Hibernate和JDBC的优缺点?
如何书写一个onetomany配置文件.2
11、iBatis与Hibernate有什么不同?
2
12、写Hibernate的一对多和多对一双向关联的orm配置?
2
9、hibernate的inverse属性的作用?
2
13、在DAO中如何体现DAO设计模式?
2
14、spring+Hibernate中委托方案怎么配置?
2
15、spring+Hibernate中委托方案怎么配置?
2
16.hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有一个实体类与之对应如何解决;2
17.介绍一下Hibernate的二级缓存2
18、Spring的依赖注入是什么意思?
给一个Bean的message属性,字符串类型,注入值为"Hello"的XML配置文件该怎么写?
2
19、Jdo是什么?
2
20、什么是spring的IOCAOP2
21、STRUTS的工作流程!
2
22、spring与EJB的区别!
!
2
八.软件工程与设计模式2
1、UML方面2
2、j2ee常用的设计模式?
说明工厂模式。
2
3、开发中都用到了那些设计模式?
用在什么场合?
2
九.j2ee部分2
1、BS与CS的联系与区别。
2
2、应用服务器与WEBSERVER的区别?
2
3、应用服务器有那些?
2
4、J2EE是什么?
2
5、J2EE是技术还是平台还是框架?
什么是J2EE2
6、请对以下在J2EE中常用的名词进行解释(或简单描述)2
7、如何给weblogic指定大小的内存?
2
8、如何设定的weblogic的热启动模式(开发模式)与产品发布模式?
2
9、如何启动时不需输入用户名与密码?
2
10、在weblogic管理制台中对一个应用域(或者说是一个网站,Domain)进行jms及ejb或连接池等相关信息进行配置后,实际保存在什么文件中?
2
11、说说weblogic中一个Domain的缺省目录结构?
比如要将一个简单的helloWorld.jsp放入何目录下,然的在浏览器上就可打入http:
//主机:
端口号//helloword.jsp就可以看到运行结果了?
又比如这其中用到了一个自己写的javaBean该如何办?
2
12、在weblogic中发布ejb需涉及到哪些配置文件2
13、如何在weblogic中进行ssl配置与客户端的认证配置或说说j2ee(标准)进行ssl的配置?
2
14、如何查看在weblogic中已经发布的EJB?
2
十.EJB部分2
1、EJB是基于哪些技术实现的?
并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别。
2
2、简要讲一下EJB的7个TransactionLevel?
2
3、EJB与JAVABEAN的区别?
2
4、EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的?
2
5、EJB容器提供的服务2
6、EJB的激活机制2
7、EJB的几种类型2
8、客服端调用EJB对象的几个基本步骤2
十一.webservice部分2
1、WEBSERVICE名词解释。
JSWDL开发包的介绍。
JAXP、JAXM的解释。
SOAP、UDDI,WSDL解释。
2
2、CORBA是什么?
用途是什么?
2
3.Linux2
4、LINUX下线程,GDI类的解释。
2
5.问得稀里糊涂的题2
6、四种会话跟踪技术2
7、简述逻辑操作(&,|,^)与条件操作(&&,||)的区别。
2
十二.其他2
1、请用英文简单介绍一下自己.2
2、请把http:
//tomcat.apache.org/ 首页的这一段话用中文翻译一下?
2
3、美资软件公司JAVA工程师电话面试题目2
这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的朋友在笔试时更好地赢得笔试和面试。
由于这套面试题涉及的范围很泛,很广,很杂,大家不可能一天两天就看完和学完这套面试宝典,即使你已经学过了有关的技术,那么至少也需要一个月的时间才能消化和掌握这套面试宝典,所以,大家应该早作准备,从拿到这套面试宝典之日起,就要坚持在每天闲暇之余学习其中几道题目,日积月累,等到出去面试时,一切都水到渠成,面试时就自然会游刃有余了。
答题时,先答是什么,再答有什么作用和要注意什么(这部分最重要,展现自己的心得)
答案的段落分别,层次分明,条理清晰都非常重要,从这些表面的东西也可以看出一个人的习惯、办事风格、条理等。
要讲你做出答案的思路过程,或者说你记住答案的思想都写下来。
把答题想着是辩论赛。
答题就是给别人讲道理、摆事实。
答题不局限于什么格式和形式,就是要将自己的学识展现出来!
别因为人家题目本来就模棱两可,你就心里胆怯和没底气了,不敢回答了。
你要大胆地指出对方题目很模糊和你的观点,不要把面试官想得有多高,其实他和你就是差不多的,你想想,如果他把你招进去了,你们以后就是同事了,可不是差不多的吗?
关于就业薪水,如果你是应届生,那不能要高工资,好比大饼的故事,没有文凭还想拿高工资,就去中关村缺什么补什么吧!
少数人基础确实很好,在校期间确实又做过一些项目,那仍然是可以要到相对高的工资的。
1.Java基础部分
基础部分的顺序:
基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io的语法,虚拟机方面的语法。
1、一个".java"源文件中是否可以包括多个类(不是内部类)?
有什么限制?
可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致。
2、Java有没有goto?
java中的保留字,现在没有在java中使用。
3、说说&和&&的区别。
&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。
&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str!
=null&&!
str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将&&改为&,则会抛出NullPointerException异常。
If(x==33&++y>0)y会增长,If(x==33&&++y>0)不会增长
&还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31&0x0f的结果为0x01。
备注:
这道题先说两者的共同点,再说出&&和&的特殊之处,并列举一些经典的例子来表明自己理解透彻深入、实际经验丰富。
f
4、在JAVA中如何跳出当前的多重嵌套循环?
在Java中,要想跳出多重循环,可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break语句,即可跳出外层循环。
例如,
ok:
for(inti=0;i<10;i++){
for(intj=0;j<10;j++){
System.out.println(“i=”+i+“,j=”+j);
if(j==5)breakok;
}
}
另外,我个人通常并不使用标号这种方式,而是让外层的循环条件表达式的结果可以受到里层循环体代码的控制,例如,要在二维数组中查找到某个数字。
intarr[][]={{1,2,3},{4,5,6,7},{9}};
booleanfound=false;
for(inti=0;i found;i++){ for(intj=0;j System.out.println(“i=”+i+“,j=”+j); if(arr[i][j]==5){ found=true; break; } } } 5、switch语句能否作用在byte上,能否作用在long上,能否作用在String上? 在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。 显然,long和String类型都不符合switch的语法规定,并且不能被隐式转换成int类型,所以,它们不能作用于swtich语句中。 6、shorts1=1;s1=s1+1;有什么错? shorts1=1;s1+=1;有什么错? 对于shorts1=1;s1=s1+1;由于s1+1运算时会自动提升表达式的类型,所以结果是int型,再
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 面试 宝典