自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Code-lover's Learning Notes

Keep hungry,Keep foolish

  • 博客(143)
  • 资源 (97)
  • 收藏
  • 关注

转载 java 动态代理详解

一、Java动态代理        相对于静态代理的代理类在编译时生成(.class文件),动态代理与其的区别是:动态代理类在运行时在JVM中生成。Java 动态代理机制的出现,使得 Java 开发人员不用手工编写代理类,只要简单地指定一组接口及委托类(实现了InvocationHandler接口)对象,便能动态地获得代理类,避免了静态代理中代理类的急剧膨胀问题。代理类会负责将

2014-07-31 09:55:21 976

转载 java 动态代理实现原理

先来看一下JDK的动态是怎么用的。

2014-07-31 09:28:57 1049

转载 java ThreadLocal(应用场景及使用方式及原理)

Thread.java源码中:ThreadLocal.ThreadLocalMap threadLocals = null;即:每个Thread对象都有一个ThreadLocal.ThreadLocalMap成员变量,ThreadLocal.ThreadLocalMap是一个ThreadLocal类的静态内部类(如下所示),所以Thread类可以进行引用.static class Th

2014-07-30 10:15:12 19956 1

转载 java 自定义ClassLoader

编写自定义的ClassLoader注意2点即可:1. 想遵循委托模型的话重写findClass方法即可。2. 不遵循委托模型的话重写loadClass。 其他:defineClass方法把字节数组b中的内容转换成Java 类,返回的结果是 java.lang.Class类的实例。这个方法被声明为final的。该方法也是jvm预留给我们处理ClassLoader与类文

2014-07-29 19:38:52 1026

转载 java 类加载器的工作原理

Java类加载器的作用就是在运行时加载类。Java类加载器基于三个机制:委托、可见性和单一性。委托机制是指将加载一个类的请求交给父类加载器,如果这个父类加载器不能够找到或者加载这个类,那么再加载它。可见性的原理是子类的加载器可以看见所有的父类加载器加载的类,而父类加载器看不到子类加载器加载的类。单一性原理是指仅加载一个类一次,这是由委托机制确保子类加载器不会再次加载父类加载器加载过的类。正确理解类

2014-07-28 22:02:43 843

转载 java 虚拟机类加载机制

类加载过程    类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。它们开始的顺序如下图所示:    其中类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。在这五个阶段中,加载、验证、准备和初始化这四个阶段发生的顺序是确定的,而解析阶段则不一定,它在某些情况下可以在初始化阶段之后开始,这是为

2014-07-28 22:00:41 927

转载 java 通过反射获得泛型的实际类型参数

Java 泛型的参数只可以代表类,不能代表个别对象。由于 Java 泛型的类型参数之实际类型在编译时会被消除,所以无法在运行时得知其类型参数的类型。

2014-07-28 08:33:27 1255

转载 java 泛型详解

JAVA泛型编程笔记——by书生1介绍Java泛型编程是JDK1.5版本后引入的。泛型让编程人员能够使用类型抽象,通常用于集合里面。下面是一个不用泛型例子:List myIntList=newLinkedList(); //1myIntList.add(newInteger(0));//2Integerx=(Integer)myIntList.i

2014-07-27 19:51:09 1262

转载 java 内省机制

1).内省(Introspector)是Java 语言对Bean类属性、事件的一种缺省处理方法。例如类 A 中有属性 name, 那我们可以通过 getName,setName 来得到其值或者设置新的值。通过 getName/setName 来访问 name 属性,这就是默认的规则。Java 中提供了一套 API 用来访问某个属性的 getter/setter 方法,通过这些 API

2014-07-26 19:11:38 732

转载 java 自定义注解

Java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。注解不会也不能影响代码的实际逻辑,仅仅起到辅助性的作用。包含在 java.lang.annotation 包中注解的定义和接口差不多,只是在interface前面多了一个“@”。形象地说注解只是做了如下声明:大家好,代码这里用了这个注解,请大家多多关照。 然后呢,下面那里用到注解就关照下该怎么处

2014-07-26 17:33:12 892

转载 java 反射api的功能详解

前言    本文是我整理的Java反射的一些知识,其中大部分内容是翻译http://tutorials.jenkov.com/java-reflection/index.html的。1. Java反射简介JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法

2014-07-24 14:41:09 6861 1

转载 java 反射简介

1.概念

2014-07-24 14:24:56 800

转载 java 反射例子汇总

1. 一个简单的例子考虑下面这个简单的例子,让我们看看 reflection 是如何工作的。

2014-07-24 12:21:04 1290

转载 java Class对象详解

java中把生成Class对象和实例对象弄混了,更何况生成Class对象和生成instance都有多种方式。所以只有弄清其中的原理,才可以深入理解。首先要生成Class对象,然后再生成Instance。那Class对象的生成方式有哪些呢,以及其中是如何秘密生成的呢?Class对象的生成方式如下:1.Class.forName("类名字符串")  (注意:类名字符串必须是全称,包名+

2014-07-23 16:28:52 973

转载 java 枚举原理

我们回忆下所知道的java中的数据类型,java中的数据类型可以分为基本数据类型和引用数据类型。基本数据类型代表的是一种简单的数据结构,比如说我们经常所说的整型,浮点型,字符型,布尔型等。而在java当中有一种特殊的数据类型,我们叫做引用数据类型,而引用数据类型一共有四种,略懂java的人是知道的,这四种分别是类、数组、接口以及今天我要重点讲述的枚举。关于其他三种数据类型有机会我们再在一起讨论。

2014-07-23 14:25:36 1189

原创 学习技巧总结

学习一样新的东西,最怕就是没有条目,盲目杂乱地学习,或许你可以使用部分知识开发出应用来,但是当需求改变时你是应该怎么修改既有的代码呢,所以掌握部分还是不行的,必须系统全面的学习一门新知识.知道新知识的各个知识点,你可以不深入,但必须知道这个知识点的缺陷及其优点.为你选择技术提供强大的保障.      学习一门新知识,虽然可以看视频进行快速全面的进行掌握,但是记忆的短暂的,要把技术记住,还是需要

2014-07-22 14:16:33 1531 1

转载 css 前端设计师必知的background属性(有CSS3内容)

背景属性——background是css中的核心属性。你应该对它有充分的了解。这篇文章详细讨论了background的所有相关属性,甚至包括background-attachment,还为我们介绍了它在即将到来的CSS3中的样子,还有那些新加入的背景属性。 使用CSS2中的背景属性回顾css2中有五个与背景相关的属性。它们是: bac

2014-07-22 12:27:29 1071

转载 5个顶级的心理寓言,越早看到越好!

1、一棵苹果树,终于结果了。第一年,它结了10个苹果,9个被拿走,自己得到1个。对此,苹果树愤愤不平,于是自断经脉,拒绝成长。第二年,它结了5个苹果,4个被拿走,自己得到1个。“哈哈,去年我得到了10%,今年得到20%!翻了一番。”这棵苹果树心理平衡了。但是,它还可以这样:继续成长。譬如,第二年,它结了100个果子,被拿走90个,自己得到10个。很可

2014-07-22 09:22:39 615

转载 java 推荐读物与源代码阅读(转)

1. Java语言基础谈到Java语言基础学习的书籍,大家肯定会推荐Bruce Eckel的《Thinking in Java》。它是一本写的相当深刻的技术书籍,Java语言基础部分基本没有其它任何一本书可以超越它。该书的作者Bruce Eckel在网络上被称为天才的投机者,作者的《Thinking in C++》在1995年曾获SoftwareDevelopment Jolt Award

2014-07-21 23:49:00 755

转载 java WeakHashMap详细介绍(源码解析)和使用示例

概要这一章,我们对WeakHashMap进行学习。我们先对WeakHashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用WeakHashMap。第1部分 WeakHashMap介绍第2部分 WeakHashMap数据结构第3部分 WeakHashMap源码解析(基于JDK1.6.0_45)第4部分 WeakHashMap遍历方式第5部分 WeakH

2014-07-21 23:28:07 1255

原创 大牛blog汇总

系列专题的目录01. Java String系列 (共3篇)02. Java异常系列 (共3篇)03. Java 时间日期系列 (共7篇)04. java io系列 (共26篇)05, Java 集合系列 (共18篇)06. Java 多线程系列 (共43篇)http://www.cnblogs.com/skywang12345/archiv

2014-07-21 21:48:10 1185

转载 java 源码分析之HashSet及LinkedHashSet

Java容器类的用途是“保存对象”,分为两类:Map——存储“键值对”组成的对象;Collection——存储独立元素。Collection又可以分为List和Set两大块。List保持元素的顺序,而Set不能有重复的元素。     本文分析Set中最常用的HashSet类,并简单介绍和对比LinkedHashSet。     首先对Set接口进行简要的说明。      存

2014-07-21 21:23:23 666

转载 java Hashtable详细介绍(源码解析)和使用示例

这一章,我们对Hashtable进行学习。我们先对Hashtable有个整体认识,然后再学习它的源码,最后再通过实例来学会使用Hashtable。第1部分 Hashtable介绍Hashtable 简介和HashMap一样,Hashtable 也是一个散列表,它存储的内容是键值对(key-value)映射。Hashtable 继承于Dictionary,实现了M

2014-07-21 20:21:57 1227

转载 java HashMap和Hashtable区别

Hashtable的应用非常广泛,HashMap是新框架中用来代替Hashtable的类,也就是说建议使用HashMap,不要使用Hashtable。可能你觉得Hashtable很好用,为什么不用呢?这里简单分析他们的区别。1.Hashtable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。查看Ha

2014-07-21 19:13:18 716

转载 java 学习计划

http://www.itheima.com/main/studyline/heimaline.html?140721wwtqun

2014-07-21 18:13:50 693

转载 html iframe自适应高度的多种方法方法小结

对于自适应高度的代码有很多,可效率什么的考虑进来好代码就不多见了,不过思路倒是差不多的

2014-07-21 16:48:20 2855

转载 散列

散列发表回复散列一般也叫哈希。散列表也叫哈希表。本位将介绍散列表的基本知识、一致性哈希、哈希碰撞攻击及Java里的哈希实现。介绍散列表是普通数组概念的推广,在最坏情况下查找一个元素需要O(n),在一些合理假设下,查找一个元素的期望时间为O(1)。在散列表中,不是直接把关键字用作数组下标,而是根据关键字计算出下标。散列函数:作用就是根据关键字计算出

2014-07-20 22:45:33 750

转载 java 类库分析之HashMap

JAVA类库分析之HashMap1.   HashMap概述1.1)重要参数HashMap是什么,相信大家都很清楚,这里偷个懒,从网上摘了一段描述HashMap的文字:HashMap是基于哈希表的 Map接口的实现。此实现提供所有可选的映射操作,并允许使用 null值和 null 键。(除了HashMap非同步和允许使用 null之外,HashMap类与 Hashtable

2014-07-20 22:00:34 974

转载 java 的浮点数计算问题

最近研究了一下Java的浮点数计算问题,从网上查询了相关的资料,汇总并经过了一些整理和调试,最后完成此文,欢迎大家指出其中的错误和问题。在Java中,float声明的变量是单精度浮点数,double声明的变量是双精度浮点数,顾名思义就是double型的实体占用内存空间是float 的两倍。float是4个字节而double是8个字节。float和double类型的数据,无法精确表示计算结果,这

2014-07-20 16:08:23 1042

原创 非计算机专业基础重点

编译原理你可以不看,这个课程理论性质的内容比较多,学完一遍收获也不会很大的。但是数据结构,有时间的话,应该看一下,要结合java的集合类的源码来看,这样效果最好的。我觉得一个计算机专业的学生,读过jdk源码的人,估计不会超过5%,我让你们读源码不是因为计算机学生都必须读源码的,只是我对你们的要求高,才让你们读源码的。笔试的内容一般涉及基本的网络知识,数据结构知识,操作系统知识,还有java

2014-07-20 16:01:04 1181

转载 java JDK源码中的Iterator

Iterator的意思是迭代器。在JDK源码中,Iterator是一个接口。 源码中,实现了Iterator接口的类,有很多:见图 1) java.util.*包中,所熟悉的一些Collection子类:AbstractList HashMap Hashtable LinkedHashMap LindedList TreeMap等;2) java.util.concurre

2014-07-20 15:39:00 865

转载 java源码分析:深入探讨Iterator模式

java.util包中包含了一系列重要的集合类。本文将从分析源码入手,深入研究一个集合类的内部结构,以及遍历集合的迭代模式的源码实现内幕。   下面我们先简单讨论一个根接口Collection,然后分析一个抽象类AbstractList和它的对应Iterator接口,并仔细研究迭代子模式的实现原理。  本文讨论的源代码版本是JDK 1.4.2,因为JDK 1.5在java.ut

2014-07-20 15:34:24 737

转载 java LinkedList原码分析(基于JDK1.6)

LinkedList也和ArrayList一样实现了List接口,但是它执行插入和删除操作时比ArrayList更加高效,因为它是基于链表的。基于链表也决定了它在随机访问方面要比ArrayList逊色一点。    除此之外,LinkedList还提供了一些可以使其作为栈、队列、双端队列的方法。这些方法中有些彼此之间只是名称的区别,以使得这些名字在特定的上下文中显得更加的合适。   

2014-07-20 14:24:09 694

转载 java 集合框架之LinkedList及ListIterator实现源码分析

1、 ArrayList中(实为AbstractList中)的ListIterator实现源码分析ArrayList的实现源码比较简单,就是对一个数组的一系列操作,比如添加一个元素后如果容量满则扩容操作、删除一个元素后使数组后面的元素像前移操作、扩容时把原来数组里的所有元素拷贝到新创建的数组中,其中对数组的拷贝与移动大量使用了 System.arraycopy,由于它底层是使用数组

2014-07-20 11:14:42 1145

转载 java 栈和Java基础类的Stack类的源码实现,缺陷以及如何实现自己的Stack类

栈是重要的数据结构,从数据结构角度看,栈也是线性表,其特殊性在栈的基本操作是线性表的子集。Stack作为最基本的数据结构,在JDK代码中,也有它的实现,java.util.Stack类是继承了Vector类,来实现了栈的基本功能。 1.栈的基本原理 栈(Stack)是限定仅在表尾进行插入或者删除操作的线性表。因此,对于栈来说,表尾端有特殊含义,成为栈顶,表头称之为栈

2014-07-19 22:31:38 1050

转载 java 类库分析之Vector

看同学人手一本《STL源码剖析》,实在亚历山大。借过一看,实在晦涩难懂。于是想着从熟悉的java入手,看看java里面自带的类库是怎么实现这些容器的。于是乎,便有了这个java stl系列。其实这个名字是我自己起,java里面提供了许多常用的类库,使用十分方便。废话不多说,从Vector类开始分析吧。Vector类与ArrayList的实现基本相同,只是Vector类是线程安全的,而Arr

2014-07-19 21:59:45 708

转载 java Arrays.asList()源码剖析

Arrays工具类提供了一些比较实用的方法,比如sort, binarySearch, fill等。其中还有一个asList方法,此方法能够将一个变长参数或者数组转换成List。但是,这个生成的List,它是固定长度的,如果对其进行add或者remove的操作,会抛出UnsupportedOperationException,为什么会这样呢?带着疑问,查看一下Arrays的

2014-07-19 15:21:00 949

转载 java Arrays.sort源代码解析

Java Arrays中提供了对所有类型的排序。其中主要分为Primitive(8种基本类型)和Object两大类。  基本类型:采用调优的快速排序;  对象类型:采用改进的归并排序。一、对于基本类型源码分析如下(以int[]为例):  Java对Primitive(int,float等原型数据)数组采用快速排序,对Object对象数组采用归并排序。对这一区别,

2014-07-19 15:02:41 677

转载 java 四种引用类型

在Java中有四种引用类型,他们是:强引用(Strong Reference),软引用(Soft Reference),弱引用(Weak Reference) 和 虚引用(Phantom Reference)。一.四种引用类型的解释:JVM会持有一般对象直到他们不再是可触及的状态。换句话说,当没有任何有效引用指向他们的时候会被垃圾回收,无效引用不会被计算在内。软引用指向的对

2014-07-19 13:53:05 840

转载 java ArrayList(二)

看了下ArrayList的源码,记录下自己的解读心得与体会。 ArrayList的自动变长机制都知道ArrayList不像数组那样是定长的,然而ArrayList也使用了数组来保存数据,所以么,自然很关心是怎么实现变长的。 ArrayList通过ensureCapacityInternal(int minCapacity)方法实现自身容量的增加,在add()

2014-07-19 11:42:01 670

Struts2教程.chm

Struts2教程.chm

2014-04-24

struts-2.2.1.1.chm

struts-2.2.1.1.chm

2014-04-24

struts2-tags-API.chm

struts2-tags-API.chm

2014-04-24

struts2.0中文帮助手册.chm

struts2.0中文帮助手册.chm

2014-04-24

spring2.0-reference_final_zh_cn.chm

spring2.0-reference_final_zh_cn.chm

2014-04-24

Hibernate+API+(3.3.1.GA).chm

Hibernate+API+(3.3.1.GA).chm

2014-04-24

Hibernate Annotations参考文档-3.20.chm

Hibernate Annotations参考文档-3.20.chm

2014-04-24

JAVAEE_6.0.1.chm

JAVAEE_6.0.1.chm

2014-04-24

JavaEE6 API 英文版.CHM

JavaEE6 API 英文版.CHM

2014-04-24

JavaEE6 API 中文版.chm

JavaEE6 API 中文版.chm

2014-04-24

Struts2Hibernate+Spring中文帮助文档.zip

Struts2Hibernate+Spring中文帮助文档.zip

2014-04-24

ssh2+API+集合.rar

ssh2+API+集合.rar

2014-04-24

spring-framework-master.zip

spring-framework-master.zip

2014-04-24

JavaEE6_API_英文版_中文版.rar

JavaEE6_API_英文版_中文版.rar

2014-04-24

Hibernate_Annotation_文档.pdf

Hibernate_Annotation_文档.pdf

2014-04-24

ssh框架api集合.rar

java ssh框架api集合

2014-04-24

.Struts2+API.chm

.Struts2+API.chm.

2014-04-24

Android中文文档.pdf

Android中文文档.pdf

2014-04-24

androidapi_chm.zip

androidapi_chm.zip

2014-04-24

程序员的数学.pdf

程序员的数学.pdf

2014-04-24

服务端源码.rar

服务端源码.rar

2015-07-15

客户端源码.rar

客户端源码.rar

2015-07-15

nio-src.zip

nio-srcnio-src

2015-03-15

ASM_Demo.zip

ASM_Demo.zip

2015-02-01

ssh Struts2.2+Hibernate3.6+Spring3.1+oracle 分页示例.zip

ssh Struts2.2+Hibernate3.6+Spring3.1+oracle 分页示例.zip

2015-01-22

Gif编码解码类,总共四个

Gif编码解码类,总共四个Gif

2014-12-29

css 清除默认样式

清除html原有样式清除html原有样式清除html原有样式清除html原有样式

2014-11-27

eclipse格式化代码配置文件.zip

eclipse格式化代码配置文件.zip(包含代码清理与格式化)

2014-08-07

j2se6.chm文档

j2se6.chm jdk jdk6 文档 api

2014-07-07

[精通正则表达式(第三版)].(美)佛瑞德.扫描版.pdf

[精通正则表达式(第三版)].(美)佛瑞德.扫描版.pdf [精通正则表达式(第三版)].(美)佛瑞德.扫描版.pdf [精通正则表达式(第三版)].(美)佛瑞德.扫描版.pdf

2014-06-28

jd-gui-0.3.5.osx.i686.dmg

jd-gui-0.3.5.osx.i686.

2014-06-09

dex2jar-0.0.9.15.zip

dex2jar-0.0.9.15.zip

2014-06-09

apktool1.5.2.tar.bz2

apktool1.5.2.tar.bz2

2014-06-09

apktool-install-macosx-r05-ibot.tar.bz2

apktool-install-macosx-r05-ibot.tar.bz2apktool-install-macosx-r05-ibot.tar.bz2apktool-install-macosx-r05-ibot.tar.bz2

2014-06-09

Node.js开发指南.pdf

Node.js开发指南.pdf

2014-05-27

jstl.rar(jar)

jstl.rar

2014-05-26

javaee mvc

javaee mvc

2014-05-22

ubuntu 下sublime2 输入法支持.tar.gz

ubuntu下让sublime2支持中文输入法,里面包含必要的文件和步骤文档,方便快速配置.

2014-04-26

Android自定义对话框样式.zip

该源码有各种样式可供开发者选用。开发者可参照源代码实现自己喜欢的样式。

2014-04-24

编程规范.rar

编程规范

2014-04-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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