Java
文章平均质量分 69
因水成墨
哼哼哈嘿
展开
-
javaIO——基础
缓存与缓存的处理方式是javaI/O的基础,原创 2017-04-26 23:08:34 · 211 阅读 · 0 评论 -
从CAS和原子类看unsafe
J.U.C中的原子类实现大致相同,所以我们看AtomicInteger的实现来看一下CASAtomicInteger的实现其有一个私有,volatile变量private volatile int value;//实现可见性public final int incrementAndGet() { for (;;) { int cu原创 2017-08-14 22:25:50 · 261 阅读 · 0 评论 -
J.U.C下的并发容器的并发实现
ArrayBlockingQueue 基于数组的有界的阻塞队列,其实现线程同步的方式为ReentrantLock 和两个条件,存取用了一把锁,其在线程池中常 见,下面ti'chu原创 2017-08-09 11:15:45 · 296 阅读 · 0 评论 -
Java Concurrent包下的并发容器
ConcurrentHashMap 我们知道HashMap不是一个线程安全的容器,最简单的方式使HashMap变成线程安全就是使用Collections.synchronizedMap,它是对HashMap的一个包装public static Map m=Collections.synchronizedMap(new HashMap());同理对于List,Set也提供了相似方法。原创 2017-07-23 11:17:22 · 336 阅读 · 0 评论 -
Java Mina 基于NIO的通讯框架——编写服务器端
导入jar包导入Mina的相关jar包,了解的比较少,所以这里只用了核心的一个,mina-core和slf4j-apiMina的处理流程Mina框架就是对Java的NIO的封装,处理层次大约为IoService 、IoHandler、IoProcess,IoFilterIOservice层次实现了java nio的serversocketchennel服务器原创 2017-06-11 17:12:16 · 260 阅读 · 0 评论 -
怎么让用java做好看的charts
今天刷微博时刷出巨多黑店,顿时心想应该有一款小工具能够记录查找一下,免得日后还得翻微博找好久,但是,当我做了一个小字典后,深深陷入了对java GUI的不忍直视中。。。怎么才能让java GUI好看点呢?我尝试一下做了一下对Jfreecharts的封装,把我喜欢的样式封装进去,确实好看不少,原来是这样的:现在是这样的:日后不用在去写很多的样式代码,省力不少,以饼状图原创 2017-04-26 18:42:38 · 1714 阅读 · 0 评论 -
java集合框架(三)——映射
Map 一、HashMap1、实际上是一个“链表散列”,就是链表和数组的结合体,底层是一个数据结构(Entry[] table),数组每一项是一个链表transient Entry[] table; static class Entry implements Map.Entry { final K key; V v原创 2017-04-22 12:52:30 · 233 阅读 · 0 评论 -
java集合框架(二)——Collection(集合)类
学习完接口后,开始学习实现他们的标准类一、ArrayList类ArrayList类扩展AbstractList接口,并实现list接口,底层使用数组保存所有元素,分析源码:1、底层使用数组实现private transient Object[] elementData; 2、构造函数public ArrayList() {原创 2017-04-21 21:48:46 · 162 阅读 · 0 评论 -
java集合框架(一)——框架结构及基础接口
java.util包是一个重要的包,包含许多类和接口,它还包括java的一个功能强大的子系统——集合框架,集合框架是一个复杂接口和类的层,提供了管理对象组的优化技术。使用集合框架的目的有几个,首先这种框架必须是高性能的,基础集合(动态数组、链表、树、哈希表)的实现是高效率的,其次,框架允许以不同类型的集合以相似的方式进行操作,并且有高度的互用性,再次,必须很容易扩展和改变一个集合。所以原创 2017-04-20 15:50:45 · 987 阅读 · 2 评论 -
java IO ——new I/O包
新IO系统基于两个最简单的项目:通道和缓存区。通道代表对一个IO源或目标的开放式连接,缓存区存放可操作的数据,NIO是异步非阻塞式调用io系统同步、异步、阻塞、非阻塞同步是一个连接一个线程,而异步是一个请求一个线程,阻塞是当读取不到数据时线程会等待,非阻塞是线程发出数据请求后转而向下执行,当数据加载好时通知线程NIO基础fileinputstream f = new原创 2017-05-02 19:50:40 · 318 阅读 · 0 评论 -
java学习——string
对string类做一个简单的论述,string是java.lang包下的类,包含对字符串的处理 一、string类中的函数1、构造函数(1) string str = "hello string";(2) string str = new string("hello string");(3) string str = new string(new char ch[原创 2017-04-20 12:54:48 · 335 阅读 · 0 评论 -
Java LinkedList源码
Linkedlist的源码结构和其他没有太大区别,但细节上非常有学习的必要一、大体结构总体上还是围绕双向链表,以链表的操作:1、CURD为底拓展了一系列方法,从首尾增删的remove-unlinkf/l、add-link,中间删除的remove-unlink,查询的一系列2、边界检测用的方法:isPositionIndex等二、方法细节笔记方法之间低耦合,抽象出高内原创 2017-09-16 14:34:28 · 297 阅读 · 0 评论