你的位置:首页 > Java教程

[Java教程]面试(Ali)


高级Java研发工程师面试问题:

1)根据简历,哪个项目印象最深刻?
  无分值,但是根据简历,确定后续的问题主要覆盖面。评定相应的分值:1-5
2)这个项目架构设计是怎么样的?有哪些系统,哪些部署环境,整个的功能和数据流向是怎么样的?
  能够完整地说出系统的功能,部署的环境,数据的流向。评定相应的分值:1-5
3)这个项目用了哪些技术?为什么要用这些技术?
  清晰地说出所使用的技术、框架,知道这些技术的使用目的。评定相应的分值:1-5
4)实施时发现这些技术有哪些优缺点?优点是怎样发挥利用的,缺点是如何克服的?
  很明确这些技术本身的优缺点,清楚描述优点的发挥场景,以及对缺点的克服、绕过方案。评定相应的分值:1-5
5) 最后项目完成后,觉得当初的设计有哪些问题,应该做哪些改进?
  有没有反思架构的设计,有没有想过某些技术的合理性并考虑重新选择,并分析改进和替换的原因。
面试题:

1.描述一个系统,功能,设计,实现

2.团队结构,工作职责

3.为什么采用一个技术,为什么不使用一个技术

4.应用中有使用到集群么?多大规模?

5."cluster中应用中碰到的问题,session共享问题?"

7.如何实现集群?session复制?无状态?集中session?

8.Collections和Collection的区别?

9.HashMap和HashTable的区别

10.Java中有那些集合的接口

11.Map与Collection的关系?

12.ClassLoader是如何查找类的?

13.equals与==的区别

14."Exception,checked,unchecked"

15.exception机制,层次

16.final关键词的使用

17.hashCode()方法的作用

18.InputStream与Reader的区别

19.interface与abstract类的区别

20.Java非阻塞I/O?

21.Java的基本对象Object有哪些方法?

22."Java中反射的性能如何,你是怎么看待的"?

23.Object的hashCode()的计算,肯定唯一的吗?

24.典型的web应用的classloader结构

25."对象要实现排序,需要实现什么接口"

26.请问你在什么情况下会在你的JAVA代码中使用可序列化?

27.如何保证一个类的非静态方法在多个实例中是同步的?

28.如何将一个String转化为int

29.如何序列化一个类的实例

30.怎么样克隆一个类

31.怎样标识JavaBean对象里面的一个属性不需要被序列化?

32.Java中内存调优的参数?

33.垃圾收集是什么,为什么需要,怎么工作

34.ajax

35.cookie&session

36.cookie的原理

37.http中的forward和redirect的区别

38.ear应用中classloader的结构

39.EJB有哪几种事务属性(TransactionPropagationAttributes)?请阐述它们之间的区别。

40.JMS的有哪几种消息模型?

41.stateful session bean的生命周期,请详细描述StatefulSessionBean的生命周期。

42."在一个EJB容器中,容器如何知道事务已经完成并且可以提交了?用户如何控制事务回滚?"

43.AOP的含义与用途

44.Ioc的含义与用途,IoC有哪几种类型?使用IoC有哪些好处?现在有哪些比较流行的IoC容器?

45.Spring用过那些功能

46.Structs中处理请求的流程

47.解释springaop,transaction,FactoryBean&BeanFactory

48.平时会关注开源软件的发展么?

49.HttpServlet类中有那些方法

50.jsp执行过程,大量使用jsp有什么问题?PermGen大小

51.servlet的生命周期

52.session的生命周期

53.如何在HttpSession过期的时候,清理你在HttpSession中保存的对象的资源占用?

54.notify()对应的方法是什么?

55.daemon线程的含义,什么是Daemon线程?它有什么意义?

56.Thread的sleep方法和Object的wait方法有什么区别?

57.解释synchronized

58.解释ThreadLocal

59.如何停止一个正在运行的线程?

60.什么叫线程安全?servlet线程安全吗?

61.怎么样写一个线程?用线程时的注意点?

62.JDK如何做到

63.

64.性能测试,容量测试,有没有?如何做?

65.有没有针对伸缩性的设计?有没有针对性能的设计?解释scalability与extensibility

66.常见的排序算法有哪些?各有什么优缺点?

67.设计模式列举,解释使用场景

68.PreparedStatement与Statement

69.数据库事务有哪几个隔离级别?请分别阐述

70.数据库相关的性能优化?sql,数据库本身,缓存?

71.项目中碰到的问题,如何解决?

72.java应用性能优化,从哪些方面入手?