自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Chen

我们都站在巨人的肩膀上

  • 博客(13)
  • 收藏
  • 关注

原创 Java虚拟机学习之Java内存模型

我们都站在巨人的肩膀上概述内存模型:可以理解为在特定的操作协议下,对特定的内存或者或者缓存进行读写访问的过程抽象。这类协议有:MSI/MESI/MOSI/Synapse/Firefly以及Dragon/Protocol等Java内存模型Java虚拟机规范中试图定义一种Java内存模型来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java在各种平台下都能达到一致的内存访问效果。主内存和工作内存

2017-07-27 09:33:10 439

原创 Java学习之HashMap

我们都站在巨人的肩膀上1.HashMap源码public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable{ // 默认的初始容量 static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; //

2017-03-08 17:12:25 206

原创 Java学习之LinkedList

我们都站在巨人的肩膀上1.LinkedList 源码:public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, java.io.Serializable{ // transient修饰的字段将不进行序列化,该变量内容在序列化后无法

2017-03-06 18:19:55 163

原创 Java学习之ArrayList

我们都站在巨人的肩膀上1.ArrayList源码:public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable{ private static final long serialVersionUID = 8

2017-03-06 14:41:49 173

原创 Java学习之容器

我们都站在巨人的肩膀上参考:http://www.cnblogs.com/forestwolf/p/5645179.html1.容器概述容器,就是可以容纳其他Java对象的对象。Java容器里只能放对象,对于基本类型(int, long, float, double等),需要将其包装成对象类型后(Integer, Long, Float, Double等)才能放到容器里。优点:降低编程难度提高程

2017-03-06 11:06:39 292

原创 Java学习之序列化

我们都站在巨人的肩膀上1.序列化:以特定的方式对类实例的瞬时状态进行编码保存的一种操作。将一个对象的状态(各个属性量)保存起来,然后在适当的时候再获得。将数据分解成字节流,以便存储在文件中或在网络上传输。2.反序列化:打开字节流并重构对象。对象序列化不仅要将基本数据类型转换成字节表示,有时还要恢复数据。恢复数据要求有恢复数据的对象实例。3.序列化特点:如果某个类能够被序列化,其子类

2017-03-03 17:53:49 196

原创 Java学习之访问修饰符

我们都站在巨人的肩膀上我们所写的正常属性修饰符有public、private、protected。这些相信大家都不陌生,近几天和同事讨论,在普通的类中属性不写以上修饰符,那么访问权限是什么?是默认的friendly访问权限,不存在该关键字。friendly与protected有什么区别呢?protected 的访问权限在同包,子类也可继承。friendly 则在子类中是不可继承。以下是示例pr

2017-03-02 14:28:16 225

原创 Java学习之RMI

我们都站在巨人的肩膀上全称:Remote Method Invocation组成:远程服务的接口定义远程服务接口的具体实现桩(Stud)和框架(Skeleton)文件一个运行远程服务的服务器一个RMI命名服务,它允许客户端去发现这个远程服务类文件的提供者(一个http或者ftp服务器)一个需要这个远程服务的客户端示意图:步骤:1. 生成一个远程接口2. 实现远程对象(服务器端程

2017-02-28 17:54:37 199

原创 Java学习之泛型E、T、K、V等的含义

我们都站在巨人的肩膀上在集合使用中,我们会接触到泛型,正确的使用泛型是必要的,以下就介绍常用泛型:E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number(数值类型) ? - 表示不确定的java类型

2017-02-28 17:46:46 200

原创 Java学习之Integer封装与拆箱

我们都站在巨人的肩膀上Integer自动封装的陷进示例:public static void main(String[] args) { Integer a=1000,b=1000; Integer c=100,d=100; System.out.println(a==b);//false System.out.println(c==d);//true }以上两个

2017-02-28 17:39:56 369

原创 Spring源码学习之AOP

我们都站在巨人的肩膀上声明:参考《spring源码深度解析》1.Spring AOP主要采用动态代理实现,而动态代理分为两种:JDK动态代理:其代理对象必须是某个接口的实现,它是通过在运行时期创建一个接口的实现类来完成对目标对象的代理。CGLIB代理:实现原理类似于JDK动态代理,只是他在运行期间生产的代理对象是针对目标类扩展的子类。CGLIB是高效的代码生成包,底层依靠ASM操作字节码实现,性

2017-02-27 16:13:35 319

原创 Java学习之jdk与cglib动态代理

声明:参考部分博客做记录1.jdk动态代理实现接口:public interface UserService { String getName();}接口实现:public class UserServiceImpl implements UserService { public String getName() { System.out.println("----

2017-02-23 17:32:58 240

原创 Spring源码学习之容器的功能扩展

Spring源码学习之容器的功能扩展声明:参考《Spring源码深度解析》Application和BeanFactory区别:Application提供了更多的扩展功能,简单来说,就是:Application包含了BeanFactory的所有功能。1.Application和BeanFactory加载方式BeanFactory bf = new XmlBeanFactory(new ClassPat

2017-02-22 16:27:50 200

空空如也

空空如也

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

TA关注的人

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