
【**Core Java**】
文章平均质量分 81
iteye_5013
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【core java】java assert的用法
assert 是在 J2SE1.4 中引入的新特性, assertion 就是在代码中包括的布尔型状态,程序员认为这个状态是 true 。一般来说 assert 在开发的时候是检查程序的安全性的,在发布的时候通常都不使用 assert 。在 1.4 中添加了 assert 关键字和 java.lang.AssertError 类的支持。 首先,我们有必要从一个例子说起 ass...原创 2011-12-24 12:40:37 · 135 阅读 · 0 评论 -
WXXR LRUMap的实现
前言实现LRU算法,注意观察者模式、并发(读写锁、线程池)的运用核心类:LRUMap成员变量LinkedHashMap<K,V> map —— 底层存放元素(key-value)的容器。ConcurrentLinkedQueue<LRUMapEvictionListener<K,V>> listeners —— 监听器队列...原创 2012-02-22 18:33:00 · 256 阅读 · 0 评论 -
Apache LRUMap实现
源码是org.apache.commons.collections.LRUMapjavadoc是http://commons.apache.org/collections/api-release/index.html原创 2012-02-23 13:10:47 · 170 阅读 · 0 评论 -
TCP/IP+NIO
NIONIO参见 TCP/IP+NIO原创 2012-02-24 15:17:30 · 206 阅读 · 0 评论 -
WXXR LRUList的实现
LRUList原创 2012-03-01 16:01:14 · 138 阅读 · 0 评论 -
各个rules里代码分析
InternalChannelRuleprivate static class NoInternalChannelPredicate implements Predicate { /** * */ public NoInternalChannelPredicate() { ...原创 2012-03-06 10:54:25 · 450 阅读 · 0 评论 -
【Java并发】线程安全
什么是线程安全?当多个线程访问一个类时,如果不用考虑这些线程在运行时环境下的调度和交替执行,并且不需要额外的同步及在调用方代码不必作其他的协调,这个类的行为仍然是正确的,则称这个类是线程安全的类。 无状态的类是线程安全的如果一个类是无状态的:不包含域也没有引用其他类的域。一次特定计算的瞬时状态会唯一地存在本地变量中,这些本地变量存储在线程的栈中,只有执行线程才能访问...原创 2012-03-10 15:44:19 · 130 阅读 · 0 评论 -
Java编程中“为了性能”尽量要做到的一些地方[zz]
1. 尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:第一,控制资源的使用,通过线程同步来控制资源的并发访问;第二,控制实例的产生,以达到节约资源的目的;第三,控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信。2. 尽量避免随意使用静态变量...原创 2012-03-19 23:31:43 · 154 阅读 · 0 评论 -
Concurrent-Executor Framework
Executor Framework Callable VS Runnable同1.代表任务,会被线程执行。不同1. Callable型的任务能够返回结果或者抛出异常,而Runnable型任务不能 //java.util.concurrent //Interface Callable<V>V call() throws Excep...原创 2011-12-03 17:27:32 · 109 阅读 · 0 评论 -
【****Core Java提纲****】
Java IONIOJava并发编程线程安全Concurrent-Executor Framework锁可携带结果的任务:Callable和Future线程池的创建Java网络编程客户端-服务器端模型 TCP协议介绍TCP/IP+BIOTCP/IP+NIO...原创 2012-04-02 18:54:56 · 121 阅读 · 0 评论 -
【Core Java】类加载
主要内容包括:1.类加载 / 类连接 / 类初始化2.类加载器 JVM进程 类的加载将类的class文件(类的二进制数据)读入内存,并为之创建一个java.lang.Class对象。 写道系统中的所有的类实际上也是对象(类加载时创建),都是java.lang.Class的实例 类加载由类加载器完成,JVM会提供类加载器(系统类加载器),开发者...原创 2012-04-02 21:16:18 · 115 阅读 · 0 评论 -
【Java NIO】内存映射文件
java.nio包包含对下列特性的支持:1.字符集编码器和解码器2.非阻塞的I/O3.内存映射文件4.文件加锁机制 内存映射文件 file-mapping model 缓冲区数据结构——Buffer 在使用内存映射时,我们创建了单一的缓冲区横跨整个文件或部分文件区域。类继承结构...原创 2012-04-24 14:16:59 · 274 阅读 · 0 评论 -
JavaCC/JJTree入门
JavaCC 介绍 JJTreeJJTree为了让JJ文件具有生成分析树的能力。 实践下载 Eclipse JavaCC plugin(http://www.easyeclipse.org/site/plugins/javacc.html)在公司win7下载的easy-javacc-1.5.7.exe 一个示例程序options {...原创 2012-05-03 18:17:31 · 795 阅读 · 0 评论 -
关于 Java 对象序列化【转载】
简介: Java 对象序列化(Java Object Serialization)在 Java 编程中是如此基本,以致很容易让人想当然。但是,和 Java 平台的很多方面一样,只要肯深入挖掘,序列化总能给予回报。在这个新系列的第一篇文章中,Ted Neward 给出 5 个需重新审视 Java 对象序列化的理由,并提供重构、加密和验证序列化数据的技巧(和代码)。Java 序列化简介Java...原创 2012-06-04 16:45:09 · 125 阅读 · 0 评论 -
【专题】LRU
包含如下内容:一. LRU算法http://nemogu.iteye.com/blog/1415874http://nemogu.iteye.com/blog/1552318 二. 算法实现实现1 基于LinkedHashMap,线程安全的java实现 http://nemogu.iteye.com/blog/14183...原创 2012-02-22 16:21:55 · 126 阅读 · 0 评论 -
LRU理论
1.LRU算法介绍 LRU是Least Recently Used的缩写,即最近最少使用页面置换算法,是为虚拟页式存储管理服务的。关于操作系统的内存管理,如何节省利用容量不大的内存为最多的进程提供资源,一直是研究的重要方向。而内存的虚拟存储管理,是现在最通用,最成功的方式——在内存有限的情况下,扩展一部分外存作为虚拟内存,真正的内存只存储当前运行时所用得到信息。这无疑极大地扩充...原创 2012-02-21 18:46:41 · 122 阅读 · 0 评论 -
POJO
【目的】 【参考】http://baike.baidu.com/view/183175.htmhttp://www.cnblogs.com/ego/articles/1499241.htmlhttp://en.wikipedia.org/wiki/Plain_Old_Java_Object原创 2011-09-16 18:15:08 · 89 阅读 · 0 评论 -
核心Object类
前言Object类是java中所有类的基类,而我们常常忽略这个类。该专题就是来研究Ojbect类中方法。方法如下:protected Object clone()boolean equals(Object obj)String toString()int hashCode()protected void finalize() —— 见《JVM专题》Class...原创 2011-10-18 18:15:29 · 88 阅读 · 0 评论 -
【Core JAVA】异常
先从 java 异常基础 入手,在学习了这些基本知识后,该思考怎么活学活用,异常使用时的注意点,怎么用好异常这些问题了,可以研究下Effective Java中异常一章,J2EE项目异常处理。异常和错误的区别在程序的运行过程中,会出现某些特殊情况。其中可以处理的叫做异常(java.lang.Exception),不能处理的严重问题叫错误(java.lang.Er...原创 2012-01-31 15:18:50 · 148 阅读 · 0 评论 -
【Core Java】java.util的集合框架
Java的集合框架大致可以分为四个体系:List/Set/Queue/Map。其中List/Set/Queue来自Collection根接口,Map来自Map根接口。 注意:Iterator迭代Collection集合,迭代过程中,避免对collection更改,除非通过Iterator删除(remove),否则会抛出并发修改异常。 Set存放不重复的元素,...原创 2012-02-02 10:14:43 · 116 阅读 · 0 评论 -
【Core Java】并发集合
并发容器与同步容器 并发容器:ConcurrentHashMap、ConcurrentSkipListMap。同步容器:java.util.Collections中提供如下 “包装方法”。 public static <T> Collection<T> synchronizedCollection(Collection<T> c)publ...原创 2012-02-02 17:05:24 · 118 阅读 · 0 评论 -
【Java并发】线程池的创建
注:《重构与模式》将构造重构成created method,在线程池的创建中隐约看到些影子,故希望能比较下获得线程池实例 1.ThreadPoolExecutor构造提供了四个构造如下:ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, ...原创 2012-02-03 09:27:11 · 105 阅读 · 0 评论 -
【Java并发】可携带结果的任务:Callable和Future
任务 Executor框架使用Runnable作为任务的基本抽象。Runnable确实有限的抽象,虽然能够产生一些边界效应,如记录日志文件或者将结果写入一个共享数据结构里,但是不能返回一个值或者抛出检测异常。 很多任务会引起严重的计算延迟——执行DB查询,从网络上获取资源,复杂计算等。对于这些任务,Callable是更佳的抽象。 Runnable和Callab...原创 2012-02-03 18:09:23 · 169 阅读 · 0 评论 -
【Java IO】序列化与反序列化
对象序列化对象序列化的目标是将对象保存到磁盘,或允许在网络中传输对象。对象序列化机制做了些什么工作呢?将内存中的java对象转换成平台无关的二进制流。然后针对这些二进制流进行操作。 对象序列化(Serialize)指将一个java对象写入IO流中。对象的反序列化(Deserialize)是指从IO流中恢复该对象。 如果需要让某个对象支持序列化机制...原创 2012-02-08 11:12:32 · 117 阅读 · 0 评论 -
TCP/IP+BIO
客户端java.net.Socket作用:用于建立连接和网络IO的操作。构造:主要方法: //创建一个流套接字并将其连接到指定主机上的指定端口号 --发送连接请求?//问题1:如果想设置与服务器建立连接有超时,how to do?Socket socket = Socket(目标IP或域名, 目标端口);//设置等待响应...原创 2012-02-09 16:56:27 · 196 阅读 · 0 评论 -
【Java NIO】NIO介绍
概述新IO使用内存映射文件的方式来处理输入/输出,新IO将文件或文件的一段区域映射到内存中,这样可以像访问内存一样来访问文件(OS里虚拟内存的概念)。 原理 系统运行的性能瓶颈通常在I/O读写,包括对端口和文件的操作上,过去,在打开一个I/O通道后,read()将一直等待在端口一边读取字节内容,如果没有内容进来,read()也是傻傻的等,这会影响我们程序继续做...原创 2012-02-13 18:13:15 · 162 阅读 · 0 评论 -
【Java IO】IO介绍
传统IO模型——流模型 Java IO分类 文件输入/输出流FileInputStream/FileReaderFileOutputStream/FileWriter示例:文件拷贝(字节流)public void doCopy(){FileInputStream fis = null;FileOutputStream fos = null;try{f...原创 2012-02-14 09:40:46 · 155 阅读 · 0 评论 -
【Java并发】锁
简介 锁是控制多个线程对共享资源访问(读/写,读:读内容;写:修改内容+删除文件)的工具。通常,锁提供了对共享资源的独占访问:对共享资源的任何访问都需要首先获取锁,一次只能有一个线程获取锁。 锁不仅是关于同步和互斥的,也是关于内存可见的。为了保证所有线程都能够看到共享的/可变变量的最新值,读取和写入线程必...原创 2012-02-20 14:04:57 · 183 阅读 · 0 评论 -
Eclipse Memory Analyzer使用指南
参考http://www.eclipse.org/mat/http://www.blogjava.net/justinchen/archive/2009/02/22/256113.html原创 2012-02-21 18:42:40 · 139 阅读 · 0 评论 -
【Java IO】Java的序列化机制
Java序列化机制采用的序列化算法:1.所有保存到磁盘中的对象都有一个序列化编号2.当程序试图序列化一个对象时,程序首先会检查该对象是否被序列化过,如果没有(在本次虚拟机中),系统才会将该对象转化为字节序列并输出。3.如果某个对象已经被序列化过,程序直接输出一个序列化编号,不会对该对象序列化。 Hadoop没有采用Java 对象序列化机制的原因: 自定义序列化...原创 2012-06-12 18:07:38 · 158 阅读 · 0 评论