1 面试流程
公司决定招聘Java工程师作为人才储备,而正在Java项目组的我,理所当然地当上了面试官。第一次的经历,理应好好记下。具体流程是:
1. 如果超级烂,就直接让他回去等通知;
2. 对于一般经验的,要面试者稍等,再由项目经理来决定是否需要继续面试;
3. 优秀的直接推荐给项目经理面试
2 Java基础知识
2.1 如何判断对象的类型
RTTI主要主要针对对象:Class对象。 RTTI(runtime type info)用于在运行时识别对象的类型信息。java虚拟机不能在运行时加载所有类型对象(动态加载),同时部分类型的信息是无法再编译器就获取的,需要在业务逻辑中依据类型信息进行相关逻辑的处理,这是就需要RTTI了。
1. instanceof
不能严格判断出是不是自己的类,而不是自己的父类。
2. getClass
o.getClass().equals(ClassC.class)
2.2 怎么判断ArrayList包含某个对象
list.contains(o);
需要重载对象中的 equals 和 hasCode 函数
2.3 Spring 3.0 注解
@Autowired 可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作。@Autowired的标注位置不同,它们都会在Spring在初始化这个bean时,自动装配这个属性。
@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按byName自动注入罢了。@Resource有两个属性是比较重要的,分别是name和type。
2.4 如何实现对象的深度拷贝
如果包含非基本对象成员,在调用基类 clone 方法后,需要再次调用一个基本对象
2.5 Java 时区问题
在服务器中,部署了Java Web项目,可在客户端获取历史数据时,数据并不在输入的时间范围内。你觉得可能是哪个地方引起的问题?
实际项目中,是因为部署Web服务器中设置的时区与客户端设置的时区不一致造成的。
延生:怎么确保两个地方的时间信息一致
3 对个人职业的发展方向
3.1 通常 Java 软件工程师的职业规划方向
初级程序员->高级程序员->程序设计师->系统架构师
程序员-->项目经理-->系统分析师、系统架构师
3.2 面试者的回答
不管怎么说,从职业方向来看,大家都表示出不太想在公司呆太久的意愿。这样不太好。自己知道就好,但面试的时候不需要提出来
1. 先做一段时间的Java,再转向android
2. 不断学习新的技术,寻求创业机会
4 总结
1. 优秀总是体现在对细微处的把握,大家都表现得很真诚,水平高低通过面试都可以看出来。真正决定是否进入公司的,其实就是自己的能力能否满足公司的需求啦。
2. 当面试官的感觉还不错,发现在面试的时候其实就是换一种思维角度来看待问题,这种感觉很好!
4.1 求职者
1. 尽量表现出强烈入职公司的欲望
2. 遇到不懂的问题,坦诚说不会,但说出自己的解决思路
3. 尽量不迟到,如果实在来不了,也应提前通知