秋招面经-视源股份-Android应用软件工程师
一面:
1、实习拷打(5min左右)
2、项目拷打(15min左右)
3、Java中抽象类和接口有什么不同?
4、想在接口的某个方法中,有默认的返回值在Java中,这是允许的吗?
5、描述一下类加载的过程
6、那静态变量分配内存是在哪个阶段?
7、谈谈双亲委派
8、我们自定义个Java的round String类,它能替换掉系统中的那个String类吗?
9、String类的加载过程对应双亲委派过程中,它是在哪一个父类中去加载的?
10、泛型作用于编译期还是运行期?
11、泛型上下边界的作用是什么?
12、声明一个数组 arr1,这数组里面存放的是什么东西?
13、JVM的内存区域有哪些部分组成?
14、这些区域中哪些部分是私有的?
15、内存管理的作用是什么?
16、Java中JVM怎么去判断什么样的对象是垃圾?
17、JVM中最大的内存区域是哪一部分?堆内存的内部又是怎么细分的?
18、总结一下JVM它核心优化的目标是什么?
19、计算机网络中OSI 七层模型从下到上分别是什么?
20、网络层的核心功能是什么?
21、TCP和UDP的区别是什么?
22、TCP在传输数据的过程中是如何保证可靠性的?
23、谈谈流量控制过程中的滑动窗口机制
24、TCP基于什么手段来确认传输的数据没有损坏?
25、实习二次拷打(5min)
26、做题:给定单链表的头指针和两个整个m、n,其中1<=m<=n<=链表长度,请反转从第m个节点到底n个节点的部分,返回反转后的链表头指针。示例:输入为1->2->3->4->5,m=2,n=4,输出为1->4->3->2->5。如果有多种解法,优先选择一种编写,另外一种可以用伪代码的形式阐述关键实现要点。(Tips:面试官要求的是拿纸和笔来写,写的过程中需要摄像头拍到手拿着笔在写,即确认是由本人书写,写完后拍照上传)
