版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liu_005/article/details/79583173
今天面了科大讯飞(杭州)的春招,总体感觉不咋地,总结如下。
技术面 |
1.自我介绍
2.项目
这是一般面试都有的环节,要求讲简历中比较满意的一个项目,说明自己的工作以及其中的难点等。
3.Java类问题
- float类型如何初始化
float a = 0;
或者
float a = 0.0f;
- 包装类的作用
个人认为可以从两方面回答,一是在编码过程中,List等集合类只接收类而不接收基本数据类型,还有有些方法要求传入Object类型的话,也是不能传入基本数据类型的;二是包装类可以方面类型之间的转换,比如可以通过int a = new Integer("123");
或者int a = Integer.parseInt("123");
来讲String类型转成int型。 - HashMap和ConcurrentHashMap的区别
一般面试套路是问HashMap和HashTable的区别,一下没准备,有点慌了。当然这两个区别也是前者是线程不安全的,而后者是线程安全的。但是ConcurrentHashMap实现线程安全的方式与HashTable是不一样的,这个我当时确实不知道,可以参考这篇文章。 - 整数比较
面试官在纸上写了如下一段代码,问打印出的结果是什么。
Integer a = 100, b = 100, c = 150, d = 150;
System.out.println(a == b);
System.out.println(c == d);
这个还是比较明显的,第一个输出true,第二个输出false。这个原因是一般在JVM初始化的时候会缓存-128到127
之间的常用Integer对象,所以a和b对象其实是同一个对象,而c和d是不同的对象。具体的原因可以参考另一篇博客。 - 多线程:sleep()、yield()、wait()之间的区别,哪个在等待时会释放资源。
这个问题当时答得不是很好,因为对这个的概念不是特别理解,可以参考这篇博客来理解。 - JVM内存分布
这个问题在《深入理解Java虚拟机》一书中有详细说明,大致分布如下如所示:
具体每个部分的功能请自行搜索。之后面试官又问了其中堆中的内存分布,这里主要是新生代、永生代的区分。
4.网络类问题
OSI模型和tcp/ip的体系结构
下图是我从《计算机网络》书中截图下来的,当时我硬是把TCP/IP的体系结构说成了五层协议的体系结构,因为我记得我学的时候是这样的啊,还跟面试官争论了许久,尴尬。
- 三次握手和四次挥手
这个问题在面试出现的概率很大,具体这里不展开。
5.数据库类问题
问我平常使用什么数据库,我说MySQL,然后就问我是Innodb引擎还是MyIASM引擎,我一脸懵逼,平时没看过。然后又问了索引,说聚簇索引和非聚簇索引的区别,要求详细说,尴尬的说不清。
6.其他
- 内聚与耦合的区别
当时答得不是很好,可参考这篇博客。
HR面 |
HR主要是问了学校、毕业时间、最近找工作的情况等一些问题,然后说了一下这边主要承担的业务。然后和面试官讨论了一下加班、薪资的事情。
总结 |
以上就是面试的总体情况,听HR说还有合肥那边要进行一次视频面试……总体感觉面试得不是很好,主要是自己学得不够扎实,还需加倍努力!