猿辅导 java岗 社招面试的技术题目汇总

JDK JRE JVM 的区别?

JVM 就是我们常说的 java 虚拟机,它是整个 java 实现跨平台的 最核心的部分,所有的 java

程序会首先被编译为.class 的类文件,这种类文件可 以在虚拟机上执行,也就是说 class 并

不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解

释给本地系统执行。

JDK = JRE+Java 开发工具

JRE = JVM+核心类库(libs)

JVM 是用来执行字节码文件的

浏览器输入一个网址会发生什么变化?

详细说一下DNS 域名解析服务器?DNS 用的是什么协议(UDP)

TCP 三次握手,那四次挥手呢?为什么要四次挥手?

TCP 怎么保证可靠通信?

超时重传和确认机制

TCP 和 UDP 的区别?

TCP 是面向连接的,TCP 传输的是字节流,TCP 只能点对点,保证传输的可靠性

UPD 不是面向连接的,传输的是报文,可以一对多,多对一,多对多,提供尽最大努力交付

进程和线程区别?

Spring 常用注解?

Spring 事务传播机制?(不知道)

Spring 事务隔离级别?(只知道有五种)

OSI 分层模型

TCP/IP 分层模型?

网络拥塞一定会导致丢包吗?为什么?

ArrayList 中删除值为指定的数,能够直接 remove 吗?会有什么问题(如果直接 remove,

比如remove 了位置为 0 的元素,则后面的元素会前移,之前的 index 为 1 的 index 就变成

了0,所以会有问题)

算法题:有三台服务器,分别是一定容量,也就是权重,如果来了若干个包,怎么分配让每

个服务器处理的包的数量和权重成正比?可以把权重相加,比如第一个为10,第二个为 20,第三个为 30.那么加起来就是 60.来一个

包,rand 一下产生一个 0-1 之间的小数,再乘以 60.如果落在 0-10 就分配给第一个服务器,

如果落在10-30 就分配给第二个服务器,如果落在 30-60 就分配给第三个服务器。

就有点大数定律来求概率的意思,当时没有想到这个方法。。。

#面经##社招##猿辅导##Java工程师#
全部评论

相关推荐

牛客101244697号:这个衣服和发型不去投偶像练习生?
点赞 评论 收藏
分享
10-09 09:39
门头沟学院 C++
HHHHaos:这也太虚了,工资就一半是真的
点赞 评论 收藏
分享
点赞 34 评论
分享
牛客网
牛客企业服务