![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA校招面试
爱做菜的程序员
这个作者很懒,什么都没留下…
展开
-
1.2.5 JVM
1、JVM回收算法和回收器,CMS采用哪种回收算法,怎么解决内存碎片问题?1 标记-清除算法(Mark-Sweep) 标记-清除算法采用从根集合(GC Roots)进行扫描,对存活的对象进行标记,标记完毕后,再扫描整个空间中未被标记的对象,进行回收,如下图所示。标记-清除算法不需要进行对象的移动,只需对不存活的对象进行处理,在存活对象比较多的情况下极为高效,但由于标记-清除算法直接回收不...转载 2019-06-20 16:38:54 · 151 阅读 · 0 评论 -
1.2.6 GC (Garbage Collection垃圾回收)
1、java中内存泄露是啥,什么时候出现内存泄露?java导致内存泄露的原因很明确:长生命周期的对象持有短生命周期对象的引用就很可能发生内存泄露,尽管短生命周期对象已经不再需要,但是因为长生命周期对象持有它的引用而导致不能被回收,这就是java中内存泄露的发生场景。1. 静态类的使用诸如 HashMap、Vector 等集合类的静态使用最容易出现内存泄露,因为这些静态变量的生命周期和应用程...转载 2019-06-20 17:15:32 · 185 阅读 · 0 评论 -
1.2.7 IO和NIO、AIO
BIO、NIO、AIO的概述首先,传统的 java.io包,它基于流模型实现,提供了我们最熟知的一些 IO 功能,比如 File 抽象、输入输出流等。交互方式是同步、阻塞的方式,也就是说,在读取输入流或者写入输出流时,在读、写动作完成之前,线程会一直阻塞在那里,它们之间的调用是可靠的线性顺序。java.io包的好处是代码比较简单、直观,缺点则是 IO 效率和扩展性存在局限性,容易成为应用性...转载 2019-06-20 19:53:15 · 111 阅读 · 0 评论 -
1.2.2 锁
链接:https://www.nowcoder.com/discuss/161991来源:牛客网1、讲一下非公平锁和公平锁在reetrantlock里的实现。以非公平锁为例,看 NonfairSync 的 lock()逻辑 :可以简单的概括为下面三个步骤:1. 进入 lock() 方法首先 cas 尝试获取锁。2. 不成功则进入 acqure(),进入tryAcquire()。在t...转载 2019-06-17 17:34:05 · 95 阅读 · 0 评论 -
1.2.3 JDK
1、Java中的LongAdder和AtomicLong的区别AtomicLong的实现方式是内部有个value 变量,当多线程并发自增,自减时,均通过cas 指令从机器指令级别操作保证并发的原子性。 唯一会制约AtomicLong高效的原因是高并发,高并发意味着CAS的失败几率更高, 重试次数更多,越多线程重试,CAS失败几率又越高,变成恶性循环,AtomicLong效率降低。LongA...转载 2019-06-18 10:41:28 · 168 阅读 · 0 评论 -
1.2.4 反射
1、反射的实现与作用定义与基本功能:反射的核心是JVM在运行时才动态加载类或调用方法/访问属性,它不需要事先(写代码的时候或编译期)知道运行对象是谁。java反射框架主要提供以下功能:在运行时判断任意一个对象所属的类 在运行时构造任意一个类的对象 在运行时判断任意一个类所具有的成员变量和方法(通过反射甚至可以调用private方法) 在运行时调用任意一个对象的方法主要用途:...转载 2019-06-18 11:04:53 · 98 阅读 · 0 评论 -
华为机试题--坐标移动
题目描述开发一个坐标计算工具,A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。输入:合法坐标为A(或者D或者W或者S)+数字(两位以内)坐标之间以;分隔。非法坐标点需要进行丢弃。如AA10;A1A;$%$;YAD;等。下...原创 2019-06-22 20:06:04 · 303 阅读 · 0 评论 -
计算机网络部分相关面试问题
链接:https://www.nowcoder.com/discuss/161991来源:牛客网❤1、网络概述1、TCP协议在哪一层?IP协议在那一层?HTTP在哪一层?❤2、运输层1、讲一下TCP的连接和释放连接。1.TCP整个过程流程图并且TCP整个过程可以看成是状态机2.TCP建立过程(三次握手)TCP连接过程:(1) 服务...转载 2019-06-28 15:09:13 · 303 阅读 · 0 评论 -
2.1 Spring
来源于牛客网:https://www.nowcoder.com/discuss/1619911、说一下IOC和AOP?IOCSpring 通过一个配置文件描述 Bean 及 Bean 之间的依赖关系,利用 Java 语言的反射功能实例化 Bean 并建立 Bean 之间的依赖关系。 Spring 的 IoC 容器在完成这些底层工作的基础上,还提供 了 Bean 实例缓存、生命周...转载 2019-06-28 15:57:04 · 164 阅读 · 0 评论