摘要: 多线程越来越多的使用,使得我们需要对它的深入理解。那么就涉及到了Java内存模型JMM。JMM是JVM的一部分,JMM定义了一个线程修改了一个共享变量,其他线程什么时候或者如何看到这个变量,如何去访问共享变量。 咱们来看一张图(图片手绘的,字写的不好,见谅),JVM里边分为堆和栈,每一个线程都有一个 阅读全文
posted @ 2017-10-19 21:07 黄青石 阅读(1052) 评论(5) 推荐(0) 编辑
摘要: 说起Spring的AOP(Aspect-Oriented Programming)面向切面编程大家都很熟悉(Spring不是这次博文的重点),但是我先提出几个问题,看看同学们是否了解,如果了解的话可以不用继续往下读: 1. Spring的AOP的实现方式有哪些? 2. 为什么使用代理机制? 3. 它 阅读全文
posted @ 2017-10-11 18:06 黄青石 阅读(1748) 评论(4) 推荐(2) 编辑
摘要: 最近读完一本《暗时间》,作者刘未鹏,很厉害的一个C++技术类大牛,我将里边重要的内容整理出来了,跟大家分享,希望对大家有帮助,如果想更深入的理解这些内容,就需要亲自阅读这本书了,这本书前边的章节写的很好,后续写了一些算法的内容我没有细读。 学习与思考 1.Google & Wiki (不懂得时候可以 阅读全文
posted @ 2017-09-29 21:57 黄青石 阅读(712) 评论(5) 推荐(1) 编辑
摘要: 其实看过很多同学在技术上面有所突破和成就,其实我个人感觉这个是有规律的,只要大家持之以恒,肯定是可以成功的,下面我就进行一些方法和内容的总结。 学习技术分为几个阶段,阅读相关的技术,理解相关的技术,将所理解的技术书写下来,将理解的内容说出来,将理解的技术用起来。 1.我们再遇到技术方面的知识的时候, 阅读全文
posted @ 2017-09-28 19:30 黄青石 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 说起Java 7的Executors框架的线程池,同学们能想到有几种线程池,它们分别是什么? 一共有四个,它们分别是Executors的 newSingleThreadPool(), newCachedThreadPool(), newFixedThreadPool(),newScheduledTh 阅读全文
posted @ 2017-09-18 22:55 黄青石 阅读(567) 评论(1) 推荐(1) 编辑
摘要: 同学们在看这个问题的时候,我先提出者两个问题,然后大家带着问题看这个文章会理解的更好。 打开源码, 我们看到如下代码,我们看到HashSet也有一个HashMap做为属性,HashSet()的构造方法就是将这个map实例化。如果大家对HashMap还不了解话,可以看我的这篇博文。还要注意有一个静态f 阅读全文
posted @ 2017-09-17 22:41 黄青石 阅读(386) 评论(0) 推荐(0) 编辑
摘要: 说起Java的HashMap相信大家都不是很陌生,但是对于HashMap内部结构有些同学可能不太了解,咱们下一步就将其展开。 HashMap是基于Hash算法的,同理的还有HashSet和HashTable。我的一篇博文讲述了如果将Object作为Key的话,那么就需要注意重写其hashCode() 阅读全文
posted @ 2017-09-15 21:21 黄青石 阅读(681) 评论(4) 推荐(2) 编辑
摘要: 相信很多同学使用Java String, Java中的String方法,但是对其中的原理可能有些模糊,那么咱们就针对这块内容进行展开,让更多的同学理解和知道。 首先我们打开String的源码,看到String是一个final的,也就是不可变的,不能修改的,不能被继承的。为什么是final的,这其中的 阅读全文
posted @ 2017-09-14 17:44 黄青石 阅读(338) 评论(0) 推荐(0) 编辑
摘要: Java的Object对象中有两个方法比较有意思,一个是equals(),一个是hashCode(),那么这两个的作用有些同学可能还不是很清楚,那么同学们现在就进一步了解一下吧。 下面咱们写一个简单的测试类: 然后写一个MainClass类用于执行代码: 执行的结果显然是false。因为他们的不同的 阅读全文
posted @ 2017-09-13 10:53 黄青石 阅读(1051) 评论(0) 推荐(0) 编辑