一、下载JDK源码包 二、解压包 三、添加环境变量 四、让刚刚设置的环境变量生效 ...
分类:
系统相关 时间:
2018-08-26 22:10:31
阅读次数:
211
原文链接:https://www.jianshu.com/p/9f98299a17a5 前言 本篇适用于了解ReentrantLock或ReentrantReadWriteLock的使用,但想要进一步了解原理的读者。见于之前的分析都是借鉴大量的JDK源码,这次以流程图的形式代替源码,希望读者能有更好 ...
分类:
其他好文 时间:
2018-08-19 23:19:38
阅读次数:
241
一.本周 1.学习了Date类与其jdk源码,并尝试用java创作date类日历 2.开始着手尝试操作开学的测试 二.下周 1.开始学习java的窗口的学习 2.继续开学测试 三.问题 1.date的源码多,查阅困难 2.无法将学生类的成员变量储存到数组中。。。。。。。 ...
分类:
其他好文 时间:
2018-08-11 18:51:48
阅读次数:
130
1、String对象是不可变的,JDK源码的类的定义如下: 不可变的特性会带来一定的效率问题。比如“+”或“+=”操作字符串带来的性能。 示例1: 使用jdk的命令javap -c反编译,从以下结果可以看到,程序创建了一个StringBuilder对象,并使用append方法拼接,最后将对象转换成最 ...
分类:
其他好文 时间:
2018-08-09 01:18:17
阅读次数:
129
一·本周 1.学习java加载窗口,画图形,加载图片等 2.学习file类,打印目录树状图等 二·下周 1.继续学习java的小项目 2.开始准备开学测试 三·问题 1.JDK源码太多,且英文版阅读有困难 2.进度较慢,下周加快进度 ...
分类:
其他好文 时间:
2018-08-04 20:24:35
阅读次数:
122
最近在研读jdk源码,网上找了下资源,发现都不完整。 后来新发现了一个有完整源码的地方,主要包括了java,c,c++的东西,装逼需要,就想拿来玩玩。但是,找了好多种下载打开的方式,发现都不对。于是,我随手写了python爬虫,把他搞定。 1. 思路分析 1.1. 目标地址:http://hg.op ...
分类:
编程语言 时间:
2018-08-02 15:59:47
阅读次数:
147
[TOC] HashMap概述 前面我们分析了基于数组实现的ArrayList和基于双向链表实现的LinkedList,它们各有优缺点:ArrayList查找元素快但是插入删除元素慢,LinkedList插入删除元素快但是查找元素慢。那么有没有一种数据对象能够做到高效的查询和 ...
分类:
其他好文 时间:
2018-07-28 11:51:14
阅读次数:
148
前言 CountDownLatch是一个闭锁实现,它可以使一个或者多个线程等待一组事件发生。它包含一个计数器,用来表示需要等待的事件数量,coutDown方法用于表示一个事件发生,计数器随之递减,而await方法等待计数器为0之前一直阻塞。它是基于AQS的共享锁来实现的,其中使用了较多的AQS的方法 ...
分类:
其他好文 时间:
2018-07-27 01:18:11
阅读次数:
171
买了《深入理解Java虚拟机》 周志明著这本书一直没有看,我们的程序都用JVM在跑,所以学习java必须掌握JVM,才能理解我们对象到底干嘛了。 1.为什么要编译JDK 想要一探JDK内部的实现机制,最便捷的路径之一就是自己编译一套JDK,通过阅读和跟踪调试JDK源码去了解Java技术体系的原理,虽 ...
分类:
系统相关 时间:
2018-07-25 21:09:49
阅读次数:
734
前言 CyclicBarrier它是什么?一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点。类似于朋友之间联系要在中午聚个会,几个朋友全部到齐后才开始喝酒吃菜。 源码 CyclicBarrier属性和构造器 CyclicBarrier方法 1. await方法 在所有参与者都已经在此 ...
分类:
其他好文 时间:
2018-07-25 01:09:17
阅读次数:
155