brickworkers的博客

识人莫小池中水,浅水不妨有卧龙

排序:
默认
按更新时间
按访问量

JDK1.8逐字逐句带你理解ConcurrentHashMap(3)

引言这篇是介绍ConcurrentHashMap的第三篇,第一篇主要介绍了在jdk1.8中所用到的一些关键知识点,第二篇主要学习了ConcurrentHashMap的组织结构与线程安全的实现,同时介绍了几个极其重要的内部类。这一篇主要是我学习领悟到的几个核心方法,包括扩容,添加和查找。笔者目前整理...

2017-03-30 15:39:10

阅读数:2390

评论数:9

JDK1.8逐字逐句带你理解ConcurrentHashMap(2)

在上一篇博文我们介绍了ConcurrentHashMap在jdk1.8中所必要的知识,作为基础入门。因为jdk1.8的ConcurrentHashMap做了太多的变动,所以新知识学习是必要的。今天是ConcurrentHashMap的第二篇,第二篇主要是认识ConcurrentHashMap,我将...

2017-03-30 13:27:00

阅读数:3707

评论数:0

JDK1.8逐字逐句带你理解ConcurrentHashMap

在前几篇博文中我详细介绍了HashMap的底层实现原理,后来我接连写了三天JVM和GC的一些知识,那些知识偏向于理论。今天换点口味,和大家一起研究学习一下ConcurrentHashMap的底层实现,因为jdk1.8在HashMap和concurrentHashMap和以往都发生了变化。我们分三部...

2017-03-28 14:30:42

阅读数:10099

评论数:7

GC-垃圾收集算法与关键收集器

在笔者的上两篇博文中,主要介绍了jvm的结构和对象的“生死”问题。今天主要来说说垃圾收集算法与各种关键的收集器,分析比较各种收集算法的优劣。如果时间和篇幅允许的话对内存动态分配做一些解释,因为垃圾回收和动态分配是java的两大基本特性。笔者目前整理的一些blog针对面试都是超高频出现的。

2017-03-27 14:17:44

阅读数:1240

评论数:0

JVM你必需知道的基础

昨天写了一篇关于java中对象生死的问题,主要目的是想让大家感觉一下我所感受到的东西:其实jvm也非常有意思,甚至对象的创建与消亡都可能触动你的心弦。所以,今天我打算深入学习一下jvm必要基础(上一篇博文也略有涉及),主要介绍一下JVM运行时各个区域的区别和作用,本来想罗列一张表的,但是篇幅会很丑...

2017-03-26 12:37:58

阅读数:1098

评论数:0

GC-谈谈“生死”

今天周六,并不断更技术博客。今天我想和大家聊聊“生死”。有研读过jvm的小伙伴们知道java相比于c++来说,内存动态分配和垃圾回收技术是两大核心。一个对象的出生由我们来创造,但是对象的死亡很多时候并不由我们决定,而是由垃圾回收技术进行管理和操作

2017-03-24 23:41:11

阅读数:786

评论数:1

JDK1.8源码逐字逐句带你理解HashMap底层(2)

引言:很开心,大家继续来看HashMap底层的第二段。昨天(上一篇博文)我们主要是介绍了HashMap类的一些重要的成员变量并简述了他们的名称作用,附带图文解释了他们之间存在的关系,又深入学习了HashMap存储的发展和结构,以一个简单的demo描述了HashMap的初始化和各个变量的变化情况。今...

2017-03-24 15:16:21

阅读数:1906

评论数:6

JDK1.8源码逐字逐句带你理解HashMap底层(1)

引言:自己在学习这个东西的时候,发现网上很多关于HashMap底层介绍的文章基于的jdk版本比较低。因为我对比之后发现编码风格有了比较大的改变。而且,今天我想尝试一种很通俗的方式来尝试记录这次的学习。在本文中我主要整理了HashMap类的重要成员变量和关键方法的涵义和作用,HashMap初始化方式...

2017-03-23 13:36:16

阅读数:2183

评论数:5

java面试算法题(2)

引言本篇博文中核心是对单链表的数据操作,从不同角度分析问题,寻求不同的结果。分享给大家。

2017-06-29 15:55:59

阅读数:1126

评论数:0

java面试算法题(1)

引言本篇博文中核心介绍的是一些java很精辟的运算符操作,包含一些独特的思维。在面试的过程中,也可能会遇到这些问题。笔者在阿里巴巴的电话面试过程中就遇到这样的一个问题。分享给大家。

2017-06-28 15:07:00

阅读数:1655

评论数:4

java I/O系统(9)-对象序列化与还原

万物皆对象,在我们程序运行中,对象只要在引用链上存在引用,那么它就会一直存在。但是当我们程序结束的时候,那么对象就会消亡。那么在jvm不运行的时候我们仍能够保存下来是非常有意义的,在java中可以用序列化来实现。序列化其实也是IO系统中的一部分。在本篇博文中,详细介绍对象序列化的概念,不同序列化的...

2017-05-24 15:39:50

阅读数:877

评论数:0

java I/O系统(8)-文件压缩

我们对于日志的保存,如果需要存档,那么最好的方式就是对日志文件进行压缩。压缩可以减少资源占用,在需要的时候还能回溯查找。在本篇博文中,详细介绍基于字节流的压缩方式,着重介绍ZipOutputStream、ZipInputStream文件的压缩和解压方式,同时介绍CheckedInputStream...

2017-05-23 19:33:09

阅读数:497

评论数:0

java I/O系统(7)-文件加锁

在通道中我们可以对文件或者部分文件进行上锁。上锁和我们了解的线程锁差不多,都是为了保证数据的一致性。在文件通道FileChannel中可以对文件进行上锁,通过FileLock可以对文件进行锁的释放。在本篇博文中会详细介绍在NIO中对文件锁的操作与配置,同时给出对应demo。

2017-05-22 17:01:01

阅读数:562

评论数:0

java I/O系统(6)-内存映射文件

在前面的博文中关于RandomAccessFile类对超大文件的处理方式进行了学习,随机访问是独立的,支持读写的,而且它最大的特征是可以访问文件中任意一个位置。在本篇博文中,认识一个基于NIO的对于大文件的处理方式:内存映射文件。解释它的运作原理,同时给出对应demo。

2017-05-19 15:50:16

阅读数:765

评论数:0

java I/O系统(5)-Buffer类

在java的IO系统中,在JDK1.4的时候引入了新的IO系统,也就是我们常说的nio,它的主要功能是提高速度。在本篇博文中,详细介绍关于nio的构造:通道和缓冲器,核心了解ByteBuffer。

2017-05-18 16:41:27

阅读数:779

评论数:0

java I/O系统(4)-RandomAccessFile类

RandomAccessFile类是在java.io中的一个工具类,它独立于字符流与字节流之外,自成一派。它的核心功能就是random功能。他可以随机访问到文件的任意位置的资源,对于超大文件的局部修改有很大的帮助。在本篇博文中详细介绍RandomAccessFile类的组成结构,阐述它所解决的问题...

2017-05-16 17:05:08

阅读数:557

评论数:0

java I/O系统(3)-字节流与字符流

在java的IO系统中,对资源的操作分为两类:字节流与字符流。如果延承inputStream与outputStream就是字节流,如果延承reader与writer就是字符流,那么他们之间到底有什么区别呢?在本篇博文中会列出IO系统的所有操作类的框架,并对字节流与字符流做出详细的解释,最后会用一些...

2017-05-15 16:02:31

阅读数:344

评论数:0

java I/O系统(2)-装饰器模式

IO系统是使用了装饰器模式的典型。所以对装饰器模式的深入研究对IO系统的理解肯定大有裨益。在本文中会详细介绍装饰器模式,会用以demo展示,同时会举出例子在IO系统中是如何呈现了这种模式,最后,我们探讨一下装饰器模式与代理模式之间的异同。

2017-05-12 17:05:46

阅读数:393

评论数:0

java I/O系统(1)-File类

自己对java的IO系统不是非常了解。所以我想进一步一点点去整理好它。在本篇博文中,我们详细介绍一下File类的意义,包括它很大部分的功能。

2017-05-10 17:28:17

阅读数:474

评论数:0

java实现排序(6)-快速排序

快速排序,作为一个编程人员来说,肯定都是接触过的。那么,你还记得怎么去实现么,怎么优化呢?在本篇博文中,会详细介绍快速排序的过程,对于不是唯一的过程(可变或者可选),我们讨论各种优化的方法。

2017-05-09 17:27:55

阅读数:1011

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭