
基础
城中行
不要停止思考.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JVM虚拟机(下) -- JVM垃圾收集算法,GC收集器
前两篇主要讲到JVM的结构及垃圾回收的判断,本篇承接上文,更进一步,说说JVM垃圾收集算法及GC收集器先说说JVM垃圾收集算法,其中包括复制算法,标记清除算法,标记整理算法及分代回收算法.复制算法:复制算法将内存分为大小相同的两块,每次使用一块,当需要GC的时候就将还存活的对象复制到另一块内存中,并且将之前的那块内存清空.是不是很眼熟?上一篇中提到的新生代中两块Survivor空间也是这样...原创 2020-01-10 20:22:58 · 432 阅读 · 0 评论 -
JVM虚拟机(中)--堆,GC机制
内容承接上节,上节说到了虚拟机栈,本地方法栈及程序计数器及类的加载等相关内容,这节聊聊上节没提到的元空间,堆及堆上的GC机制,GC的算法将在下节继续说明.java创建的对象大部分都在堆上存储,是GC操作的主体.那么堆在内存如何分配的呢?如下图:首先堆上分为新生代和老年代,新生代又分为Eden区,From Survivor 区及To Survivor区,新生代上发生的GC叫做Mi...原创 2020-01-09 20:11:18 · 411 阅读 · 0 评论 -
JVM虚拟机(上) -- JVM结构及类的加载
概念类加载机制加载器JVM结构虚拟机栈本地方法栈程序计数器本节讲涉及JVM虚拟机相关知识点,包括JVM的体系结构,Class的加载.GC等相关知识放在下节.概念首先来了解概念,什么是JVM,JVM与JDK,JRE是什么关系.JRE ===> JRE是java运行环境,是java程序能跑起来的基础JDK ===> JDK是java开发工具...原创 2020-01-08 19:40:56 · 389 阅读 · 0 评论 -
Lock 源码分析 --ReentrantLock
ReentrantLock 重入锁,从这里开始解析Lock的源码及机制首先从一个demo开始,这段代码循环5次,每次起一个线程,获取锁,执行逻辑,解锁.这篇的重点不在这个demo,无需过度关注.public class ThreadMain { private static int sum=0; private static ReentrantLock lock=...原创 2019-10-29 20:13:17 · 297 阅读 · 0 评论 -
多线程相关基本知识
本文涉及知识点: 并发与并行概念,cpu三级缓存基本概念,缓存一致性运转流程,volatile关键词可见性的实现方式等首先区分两个概念,并发与并行并行:只存在于cpu多核的场景,无论微观还是宏观都是同时运行多个指令并发:同一个时间点只会有一个指令在运行,cpu通过时间片轮换的方式使得多个指令快速交替运行介绍cpu的缓存与主存关系cpu缓存分三级,一级缓存有两个,一个是...原创 2019-10-16 19:42:10 · 230 阅读 · 0 评论 -
spring aop 的使用及注意事项(部分)
第一步在配置文件或注解中配置aspectj开启标识第二步导入需要的jar包,或在maven中添加配置其他版本可在https://mvnrepository.com/自行查询代码如下:@Aspect@Componentpublic class Aop { @Pointcut("execution(public * demo.AOP.TestAop.*(....原创 2019-07-26 16:46:57 · 680 阅读 · 0 评论 -
Spring中@Bean 与 @Autowired 的使用(部分复习)
@Bean 修饰的方法表示初始化一个对象并交由Spring IOC去管理,@Bean 只能和@Component @Repository @Controller @Service @Configration 配合使用.@Autowired 可修饰变量和方法,用于完成自动装配(将需要的外部资源注入)接下来看一段简单代码下面的代码包括三个POJO(ADemo,BDemo,CDe...原创 2019-07-19 20:50:23 · 13132 阅读 · 0 评论 -
java基础--工厂模式解析
工厂模式作为常见且非常重要的设计模式(其实设计模式都挺重要的),值得多次回顾与深入理解,以下为我自己对工厂模式的一些理解及分析工厂模式整体分为简单工厂,工厂方法,抽象工厂等,但简单工厂其实不能算是设计模式,而是一种编码习惯,但很多情况下会将简单工厂误认为是工厂模式的一种,这里也一起涵盖,接下来以电脑组装为例分别分析首先是简单工厂,简单工厂其实是一种编码习惯,上文已经说过,简单工厂的做法是将...原创 2019-07-05 19:33:04 · 142 阅读 · 0 评论 -
java基础--泛型(个人理解)
说到泛型,先从List说起,先上一段代码 List list=new ArrayList();//原生态类型 list.add("a"); list.add("b"); list.add(3); Object o=list.get(0);//object 类型使用需要强转 String os= (S...原创 2019-06-26 18:05:04 · 212 阅读 · 0 评论 -
java扫盲--java继承关系
抽出时间再过一遍java基础,记录自己之前没有学会或没有注意到的知识点java继承关系相关先说结论1:父类声明的变量和子类声明的变量同时存在,不会直接覆盖2:父类被重写的方法,在子类中无法访问,但变量可以3:静态方法不具备多态性测试代码如下: @Test public void testParent(){ Child child=new...原创 2019-06-20 15:11:17 · 461 阅读 · 0 评论