随笔分类 -  java基础

摘要:文章汇总 Java集合源码 -- Collection框架概述 Java集合源码 -- Map映射和Set集合 Java集合源码 -- List列表 String和StringBuffer 内部类 jdk动态代理和cglib动态代理 浅拷贝和深拷贝 序列化 原码,反码,补码 按位运算符 阅读全文
posted @ 2017-04-20 20:52 liuconglin 阅读(183) 评论(0) 推荐(0)
摘要:jdk动态代理 个人的理解,运行期间由JVM根据反射等机制动态的生成代理类 核心API java.lang.reflect.Proxy java.lang.reflect.InvocationHandler java.lang.ClassLoader 实现一个动态代理 代码实现:点击下载 一个典型的 阅读全文
posted @ 2017-02-24 21:17 liuconglin 阅读(830) 评论(0) 推荐(1)
摘要:在学习原型模式时,发现对浅克隆和克隆的理解不深刻,在此记录下学习心得 概念理解: x.clone()!=x, 浅拷贝和深拷贝对属性的拷贝,如下表 代码解析 有一个Husband类 还有一个Wife类 测试是在Wife类进行, 执行拷贝Wife,和Husband 浅拷贝,传递的是引用, 如下图: 执行 阅读全文
posted @ 2017-02-17 19:15 liuconglin 阅读(556) 评论(0) 推荐(0)
摘要:1.概述 collection框架是用于处理各种数据结构的,要根据各种数据结构的特点理解它 它能够保存对象,并提供很多的操作去管理对象,当你面临下面的情况时,也许你应该考虑用集合类 下面是集合体系的接口层次图: 黄色标出的: Collection体系 和 Map体系 是用的比较多的; Iterato 阅读全文
posted @ 2017-01-06 13:12 liuconglin 阅读(248) 评论(0) 推荐(0)
摘要:List概述 List是一个有序,可重复的集合,可以在List的中间插入和移除元素,根据整数索引访问元素 下图是List集合的框架图 下面是对上图的简单介绍 ArrayList 底层存储 属性 elementData 存储集合中的内容 将元素添加到指定位置 将元素添加到指定位置后, 把原数组中 该位 阅读全文
posted @ 2016-12-25 16:43 liuconglin 阅读(287) 评论(0) 推荐(0)
摘要:Map接口 Map接口是有一个映射表, 存储键和值, 它提供了两个通用的接口HashMap 和 TreeMap HashMap 是散列映射表, 对键散列; Tree是树映射表, 对键进行排序,并将其组织成搜索树 除了定义添加,删除, 视图等方法,还定义了一个子接口Entry, 用来操作键值对 Has 阅读全文
posted @ 2016-12-21 20:35 liuconglin 阅读(760) 评论(0) 推荐(0)
摘要:2.String 不可继承 和 不可变 它是final Class , 不可继承 用char类型的数组存储内容,final 修饰,且没有提供set(), 一旦初始化,值不能改变 初始化 String = 的形式: new 的形式: ()中的"abc"首先被创建, 存储在常量池; 在创建a ,存储在堆 阅读全文
posted @ 2016-12-12 19:03 liuconglin 阅读(179) 评论(0) 推荐(0)
摘要:基本概念 非持久化: 持久化: 通常的作法是将其保存到文件或数据库 序列化: 对象序列化,可以将 JVM 中的活动对象转换成字节流, 以便存储在文件中或在网络上传输 反序列化: 将文件或数据库中的字节数组(流)转换成 JVM的活动对象, 就是打开字节流并重构对象 Serializable 实现该接口 阅读全文
posted @ 2016-10-26 17:54 liuconglin 阅读(150) 评论(0) 推荐(0)
摘要:匿名内部类 使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 只要一个类是抽象的或是一个接口,那么其子类中的方法都可以使用匿名内部类来实现 示例 使用的形参必须为final 我们给匿名内部类传递参数的时候,若该形参在内部类中需要被使用,那么该形参必须要为final 内部类和外围类,编译后 阅读全文
posted @ 2016-10-13 22:52 liuconglin 阅读(229) 评论(0) 推荐(0)
摘要:按位与运算符 & 运算规则:有0为0 ,即两位同时为“1”,结果才为“1”,否则为0, 例如下面 0&0=0; 0&1=0; 1&0=0; 1&1=1; 因此,3&5 = 182^0 = 1 或运算符 | 运算规则:有1为1 , 即参加运算的两个对象只要有一个为1,其值为1。例如下面 0|0=0; 阅读全文
posted @ 2016-10-08 18:57 liuconglin 阅读(386) 评论(0) 推荐(0)
摘要:基础概念 原码, 反码, 补码是机器存储一个具体数字的编码方式 机器数: [00000001]原码,用最高位0表示正、1表示负, 这种正负号数字化的表示形式就称为“机器数” 真值:[00000001]原码,可以转化为一个具体的数字,这个数字称为真值 编码:将一个真值表示成二进制字串的机器数的过程就称 阅读全文
posted @ 2016-10-08 16:59 liuconglin 阅读(1467) 评论(2) 推荐(1)