Java面试题目

1  多线程,JVM,NIO

2  GC分代收集

3  java基础+基本算法

4 根据其做过的项目和用过的技术,往下挖。

 

Q:关于公司的期望
A:我希望第一份工作能有比较大的发展空间,能够长时间的在一个良好的环境中养成良好的习惯。

Q:大学时经历的团队合作
A:最初的时候谁也不知道应该做什么,就从理论上一点一点的抠出东西来,经过两三次的课程我们的固定团队大致有了自己的开发流程,知道怎么样进行相互间的交流沟通、协作,也能从其他团队的汇报中吸取很多经验与教训。有的时候我们团队里会加进比较牛的高人,他也会愿意对我们进行额外的指导,大家一起交流想法,各自说出来,再一起逐一分析优劣,最终定下方案。

Q:关于前端的理解
A:前端开发处于一个猛烈发展的阶段,现在可以说大部分的网站都在关注前端,前端是直接接触用户的部分,它融合了设计、程序还有一些整体的理念,一些优化,包括SEO。很多技术的实现都要通过前端,怎么把这部分做好是非常具有挑战性的事情。可能四五年前很多人都还在标准的实现上摸索,而现在有一个大家都朝着标准走的大方向,就能够更好的坚持,更好的专注,把前端技术做得更强大。

Q:自己的发展计划
A:刚毕业的这一两年希望能专注于技术的提高,和适应良好的工作流程——这也是为什么我希望能够在一个发展环境良好的公司工作,锻炼好实践能力,结合公司的产品需求,当然还有一些不断萌发的新技术。之后会向产品的方向发展,就是前端技术所要实现的目标,因为前端确实是结合很广阔的一个职位。

Q:优缺点
A:我的优点,自己觉得是比较细心,包括细致的观察还有处理细节上的事情。我之前在365日历网实习的时候,还有课程小组学习的时候,他们评价我会说我比较可靠,我觉得可能不是那种技术上特别牛什么问题都能解决的,我个人觉得是来自细心和认真负责的态度。另外后面在九星时代实习的时候,临走上司对我评价是说我抗压学习能力比较强。当时项目特别急,又有涉及到一些我还不熟悉的技术,所有人都在加班,我也是一边完成任务一边不断在学新的东西,进一步的修缮,把事情做得更好。缺点的话,我觉得现在对我影响最大的就是想问题常常会有太多顾虑,想要一次性的把问题解决,结果会浪费很多的时间。比如说技术面试的时候,很经常遇到考官说一个简单的布局设计让你实现,我有的时候就总会考虑一些没有提到的因素,像是否需要适应变化这类的,就是有些过于计较完美,反而变得优柔寡断了。这也是有次面试的时候面试官和我提到的。

Q:待遇要求
A:待遇的话,我觉得并不是很关键,而且我是应届生,我尊重公司对应届生的待遇标准。我也相信网易的竞争力吧。这几次面试后,我在网上查了不少别人的评价,觉得网易作为大门户网站,有很好的环境与发展前景,薪水的话能让自己继续活着工作学习发展就够啦。我一直认为如果公司发展前景不好,现在给很高的工资也不一定就是好事情,而好的公司能够给出符合员工给自己所创造的价值的工资。

Q:自我介绍包括实习经历
A:如实汇报

Q:面对过什么样的压力
A:我先是很囧的说了学数学的事情,后来HR又问,还有其他的吗,我又说了一下做一些课程设计的时候小组遇到的难题,技术和团队协作方面。其实还想说在九星实习的时候的工作压力,后来觉得这个才是HR最想听的,不过没有机会说了……

Q:解决问题的方法
A:技术问题的话,先上网查有没有解决的方法,如果不好解决再去请教前辈,一般还是自己先查一些资料,不想为简单的问题就打扰别人。如果遇到难以解决的问题会请教别人或者和别人一起讨论。这块回答得有点乱。

Q:为什么想留在北京
A:家里人也希望我能够独立,能够做自己喜欢的事情,在广阔的空间里发展。我自己也觉得北京机会更多。我说完HR叔叔还跟着说了一句,确实比如你在福州,不要说福州吧,就算和上海深圳这样的技术发达城市比,确实北京的机会是更多的。

Q:拿过其他公司的offer吗?觉得和其他公司比,网易好在哪里?
A:有过一些,自己不满意的地方,一种是职位不是自己期望的,比如测试或者技术支持,并不是自己第一想要做的事情,我很喜欢前端,也希望自己能在这个领域发展;还有是公司规模不大,像之前HR说的,在网易会有很多个前端工程师来完成一个大任务,我认为这样更能够发挥自己的力量,也能让自己的能力更好的发展,如果在一个小一些的公司,也许做前端的就只有我一个人,发展就会变得狭隘;还有工资问题,有的公司只给出两千五左右的待遇(我没敢说2000,其实之前确实有给我开2000的,怕被HR叔叔鄙视),这样在北京生活会艰难一些。总的还是觉得发展前景很重要。然后HR叔叔就接过话说网易确实有很大的发展空间,而且工资的话我看你在登记表上写的跨度很大(我写的是3000-5000,遵从公司对应届生的薪酬标准),这点网易肯定能够让你满意的。

Q:描述一下你的性格
A:这是我认为我回答得最失败的一个问题,我当时没多想,脱口而出——我性格比较内向,其实我应该说我温柔善良细心负责,之前想了很多关于优缺点的描述,结果也不晓得哪根筋抽抽了,直接说自己内向,接着羞涩的笑笑,接了一句不过我很喜欢和别人讨论问题,觉得一起解决问题是很开心的事情(我想大概是这句话救了我= =?)


网易的面试题:

1 请写出你用过的数据库,并说一下你用于哪一方面?请说出你对你所用的数据库的认识。

2  表中三个字段1.date 时间2.姓名3.业绩

问题1:请你用SQL 语句来完成每一天的业绩情况并按时间做升序排序

问题2:请你写出每人每天的业绩,并按时间、业绩做降序排序

3  请用一段java 程序写出把i am a student 的字符串改成student a am i

4  在原有的系统的基础上添加一个模块,这个模块要求在原有的基础上给用户一个积分的功能,功能如下

 

登录积分:用户每次登录加5分,每天的上限是10分

消费积分:消费的钱数*消费类型,如果是老用户(注册两年)消费类型为普通消费者的两倍。如果是三年则是2.5倍,四年则3倍,一次类推,普通消费者的类型为1

问题1:请设计数据库表记录这些信息。

问题2:请实现以上功能

5  请写出Servlet 的生命周期,及其主要的方法。

6  为什么现在那么流行Spring?Spring 有什么好处?

7  为什么很多人都用Hibernate,而不用JDBC 呢?

8  你平时大部分的时间都做什么?周六日有做些什么?

9  你能给我见一下Ajax 的原理吗?

10  知道面向切面编程吗?aop

11  你用的是tomcat 的那个版本?  

回答:可以延伸出来tomcat的问题,如乱码等问题?

12  

 

 

(6)Java中主要涉及接口、抽象类的理解,异常处理机制

   (7)对内存回收时机的考察(恰当时候,不是一定回收),finalize的执行,顺带的可以和final、finally的理解一起出现,而且注意finally即使在return后面,也照样执行;有些公司考到内存的分代回收,可以了解下。

   (8)字符串常量池的理解,题目的话就是结合new创建对象和==、equal,问你创建了几个对象,判断两个对象是否相同,一般记住new肯定创建新的引用,而是否指向同一个字符串用==无法判断,而单独声明String对象,那么就没有新创建对象。

   (9)String类的+操作,StringBuild的优化和StringBuffer的区别,相类似的对各种容器的区别理解(List,Set,Map),而且会说到线程安全SynchronizedMap和ConcurrentHashMap的区别;至于真的考察Java中I/O类的联合使用,那就靠自己的经验了。

   (10)内部类、泛型、反射好好看看《Java编程思想》,基本应该能搞定。而且你还会看到是否有sizeof,线程之间的协作问题等等。

 

 

 

百度:

 

  1. 一堆JVM相关的底层

 

技巧:

1  面试的技巧关键关键是主动,要会根据别人给的问题,进行延伸回答。

 

 

参考文献

 

  • JAVA,HashSet面试题  ArrayList、Vector和LinkedList的区别、HashSet原理、Collection和Collections的区别
  • 毕业后就是程序员——我的阿里、金山、中华、腾讯、360、网易面试总结(一 面试这几家公司面试总结

你可能感兴趣的:(面试)