J2SE
文章平均质量分 66
songwei128
这个作者很懒,什么都没留下…
展开
-
JDK 动态代理类分析(java.lang.reflect.Proxy使用)
Java代码 /** * JDK 动态代理类分析(java.lang.reflect.Proxy使用) * * @author 张明学 * */ public class ProxyStudy { @SuppressWarnings("unchecked") public static void main(String[] args)转载 2014-04-24 14:12:56 · 1213 阅读 · 0 评论 -
使用ViewBuffer操作ByteBuffer
视图缓冲器(view buffer)能让我们过某个特定的基本数据类型的视图查看其底层的ByteBuffer。换言之,就是把ByteBuffer里面的数据都看作某种primitive基本类型数据。但是视图view背后真正存储数据的地方是ByteBuffer,所以对view的任何操作都会作用到ByteBuffer上。正如下面这些实例,有了view,你就能很方便地把基本类型数据primitive读出/写转载 2014-08-25 09:48:56 · 614 阅读 · 0 评论 -
ByteBuffer用法小结
在NIO中,数据的读写操作始终是与缓冲区相关联的.读取时信道(SocketChannel)将数据读入缓冲区,写入时首先要将发送的数据按顺序填入缓冲区.缓冲区是定长的,基本上它只是一个列表,它的所有元素都是基本数据类型.ByteBuffer是最常用的缓冲区,它提供了读写其他数据类型的方法,且信道的读写方法只接收ByteBuffer.因此ByteBuffer的用法是有必要牢固掌握的.1.创建B转载 2014-08-21 10:28:25 · 555 阅读 · 0 评论 -
花1K内存实现高效I/O的RandomAccessFile类
通过扩展RandomAccessFile类使之具备Buffer改善I/O性能JAVA的文件随机存取类(RandomAccessFile)的I/O效率较低。通过分析其中原因,提出解决方案。逐步展示如何创建具备缓存读写能力的文件随机存取类,并进行了优化。通过与其它文件访问类的性能对比,证明了其实用价值。0评论:崔志翔 (bladeinco@citiz.net),转载 2014-08-21 18:08:44 · 585 阅读 · 0 评论 -
MappedByteBuffer小结
java的内存映射文件有如下特点: 1,使用虚拟内存,因此分配(map)的内存大小不受JVM的-Xmx参数限制,但是也是有大小限制的,首先他理论上不能超过Integer.MAX_VALUE也就是32位操作系统的2G,其次,其实际值在不用操作系统还不一样,在win7 32位操作系统下,他不能超过1.5G,具体多少,没测出来,也不知道什么原因。 2, 对应读大文件,当文件超出1.5G限转载 2014-08-21 15:01:18 · 3702 阅读 · 0 评论 -
Java NIO API详解
在JDK 1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO API作为一个基于缓冲区,并能提供非阻塞(non-blocking)IO操作的API被引入。本文对其进行深入的介绍。 N转载 2014-08-20 15:46:37 · 420 阅读 · 0 评论 -
OpenJDK和JDK区别
使用过LINUX的人都应该知道,在大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的openjdk,那么到底什么是openjdk,它与sun jdk有什么关系和区别呢?历史上的原因是,openjdk是jdk的开放原始码版本,以GPL协议的形式放出。在JDK7的时候,openjdk已经成为jdk7的主干开发,sun jdk7是在openjdk7的基础上发布的,其大部转载 2014-05-27 17:49:06 · 521 阅读 · 0 评论 -
编辑文件无法保存Fsync failed
今天在解决接口程序生成文件的时候,发现生成的文件原创 2014-06-04 10:17:48 · 22303 阅读 · 0 评论 -
ThreadLocal源码分析
这一篇之所以讲ThreadLocal,是因为之前在读Handler,Looper的源码过程(见http://maosidiaoxian.iteye.com/blog/1927735)中,看到了这个类,引起了我的兴趣。而后来发现JAVA1.6中的TheadLocal类,和我在android源码看到的这个ThreadLocal类代码是不一样的。所以这篇先讲一下Java的ThreadLocal。 J转载 2014-05-11 17:00:40 · 694 阅读 · 0 评论 -
java中Class对象详解
java中把生成Class对象和实例对象弄混了,更何况生成Class对象和生成instance都有多种方式。所以只有弄清其中的原理,才可以深入理解。首先要生成Class对象,然后再生成Instance。那Class对象的生成方式有哪些呢,以及其中是如何秘密生成的呢?Class对象的生成方式如下:1.Class.forName("类名字符串") (注意:类名字符串必须是全称,包名+类名转载 2014-04-24 16:27:32 · 539 阅读 · 0 评论 -
详解ClassLoader
要深入了解ClassLoader,首先就要知道ClassLoader是用来干什么的,顾名思义,它就是用来加载Class文件到JVM,以供程序使用的。我们知道,java程序可以动态加载类定义,而这个动态加载的机制就是通过ClassLoader来实现的,所以可想而知ClassLoader的重要性如何。看到这里,可能有的朋友会想到一个问题,那就是既然ClassLoader是用来加载类到JVM中的转载 2014-04-24 17:16:21 · 473 阅读 · 0 评论 -
Java NIO原理 图文分析及代码实现
Java NIO原理图文分析及代码实现 前言: 最近在分析hadoop的RPC(Remote Procedure Call Protocol ,远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。可以参考:http://baike.baidu.com/view/32726.htm )机制时,发现hadoop的RPC机制的实现主要用到了两个技术:转载 2015-01-27 18:46:02 · 477 阅读 · 0 评论