- 博客(7)
- 收藏
- 关注
原创 GC算法
GC算法GC算法就是垃圾回收算法,是Java中的守护线程,而我们创建的线程都是用户线程。那么我们回收不用的线程就需要用到GC。1 判断对象是否存活(1) 引用计数法象增加一个引用计数器,每当有一个地方引用它时,计数器就+1;当引用失效时,计数器就-1;任何时刻计数器 为0的对象就是不能再被使用的,即对象已"死"。但是这个方法无法解决循环引用问题,所以java没有采用这个方法。(2)可...
2019-08-20 16:47:45
350
原创 JVM小小理解
JVM理解我们在初学Java的时候经常不理解JVM是什么?JVM是JAVA Virtual Machine(JAVA虚拟机) 的简称。它是一个虚构出来的计算机,是通过在实际计算机上仿真模拟各种计算机功能来实现的。JVM 主要包括以下几个方面,我直接图来展示,大家可能清楚一点...
2019-08-18 17:33:08
82
原创 二叉树的三种遍历
#二叉树的三种遍历二叉树有三种遍历方式:(1)前序遍历 :先访问根节点,再访问左孩子,最后访问右孩子。(2)中序遍历:先访问左孩子,再访问根节点,最后访问右孩子。(3)后序遍历:先访问左孩子,再访问右孩子,最后访问根节点。三种方式是针对根节点而言的。前序遍历:A B D G H J K E C F I M中序遍历: G D J H K B E A C F M I后序遍历:G J...
2019-07-14 00:36:52
217
原创 死锁产生的四个条件
我们在进行程序运行的时候,有时候会遇到死锁问题,那么死锁产生的条件是什么呢?下面4个条件缺一不可:1互斥:共享资源X,Y之只能被一个线程占用2占有且等待:线程1已经获得共享资源X,同时在等待资源Y,并且不释放X3不可抢占:其他线程无法抢占线程1已经占有的资源X4循环等待:线程1等待线程2的西元,线程2等待线程1的资源正是因为这是个条件缺一不可,所以我们只要破坏其中一个条件,那么死锁问题...
2019-07-05 23:50:11
98
原创 Synchronized 与 ReentrantLock的关系与区别?
关系:1、Synchronized与ReentrantLock都属于独占锁的实现,都可重入锁区别:1、Synchronized是关键字,JVM层面的实现;ReentrantLock是JAVA语言层面的实现。2、ReentrantLock具备一些Synchronized不具备的特性,如响应中断,支持超时,支持非阻塞式的获取锁,可以实现公平锁(默认非公平锁)。3、Synchronized只有...
2019-07-05 23:47:02
77
原创 java类与对象(一)
java类与对象(一)一、类:一个具体事物的抽象表现,是模板。 对象:类的具体表现。具体举例: 类: 交通工具 对象: 汽车 火车 轮船类: 动物 对象: 狗 猫 老虎从上面的具体实例中我们也可以看出一个特性:一个类有多个对象。在JAVA中我们用class来定义一个类public class Student { pr...
2019-04-12 22:31:15
118
原创 菜鸟新征程
#小白第一天人生每个阶段都有新的开始,也会学习新的知识,从今天开始我就要开始新的征程,学习编程,这里将记录我的菜鸟之路。首先要给自己立一个flag1 每天编程5个小时,坚持下来。2 每天去论坛上看一些大佬写的好的,对自己有用的东西。3 我的目标是今年9月达到一些公司的要人水平。4 最终进入字节跳动,这也是我最想进入的公司之一。...
2019-03-26 13:52:03
166
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人