- 博客(11)
- 资源 (97)
- 收藏
- 关注
原创 JAVA基础(1)——基本概念
Java是面向对象的语言,面向对象思想将所有东西都看作对象,对象和对象之间通过行为进行沟通,不断的产生问题和解决问题。1. 概念类、对象对象是一个具体的实例,类是对象的抽象。类似:人(抽象的类)—> 张三(具体的人对象)。类由属性和方法构成,属性描绘了类的特点,而方法描述了类的功能。封装这种将所有的属性方法包装在一起的方法,就是封装。封装是为了实现信息隐藏,不仅指类中包含了哪些特性和行为,还包括规定
2016-10-29 17:14:57 1288
原创 JAVA基础(10)——IO、NIO
IO 是主存和外部设备 ( 硬盘、终端和网络等 ) 拷贝数据的过程。 IO 是操作系统的底层功能实现,底层通过 I/O 指令进行完成。1. 标准IOJava 标准 IO 类库是 io 面向对象的一种抽象。基于本地方法的底层实现,我们无须关注底层实现。从处理数据类型上,可以分为字节流和字符流;从数据流向上,可以分为输入流和输出流。 - 字节流 字符流 输入流 InputStrea
2016-10-29 16:23:24 492
原创 JAVA基础(11)——泛型
先看这样一段小程序:public class GenericType { public static void main(String[] args) { ArrayList al = new ArrayList(); al.add("hello world!"); String s = al.get(0); //编译不通过 S
2016-10-29 14:54:33 660
原创 JAVA基础(9)——容器(3)——并发容器
1. List CopyOnWriteArrayList public class CopyOnWriteArrayList implements List, RandomAccess, Cloneable, java.io.Serializable 源自jdk1.5。通常被认为是ArrayList的线程安全变体。CopyOnWriteArrayList内部也由可变数组实现
2016-10-29 14:45:22 1251
原创 JAVA基础(4)——容器(2)——普通容器
1. ListVector从Vector源码看: Vector自jdk1.0出现。 Vector继承AbstractList,实现了List、RandomAccess、Cloneable、Serializable。 Vector内部维护着protected Object[] elementData,会序列化整个数组,包括未存储数据的区域。 Vector初始容量为10,容量是动态变化的,容量增长为((
2016-10-29 14:29:49 1440
原创 JAVA基础(3)——容器(1)——常用容器分类
从元素存储的角度看,容器是存储元素的单元,这样来看,数据类型都是容器。 在这里,遵从jdk的定义,将容器定义为jvm持有对象的单元。Java类库提供了一套相当完整的容器类,使用这些类的方法可以保存和操纵对象。常用容器如下表: (图片来自网络,已忘记出处,见谅) 以下内容基于jdk1.8。 在这里,集合类分为了Map和Collection两个大的类别。 图片左上角的那一块灰色里面的四个类(
2016-10-29 14:08:26 6041
原创 JAVA基础(12)——反射
1 概述反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。1.1 Java中的反射机制反射允许动态地发现和绑定类、方法、字段,以及所有其它的由语言所产生的元素。反射不仅可以列举类、字段以及方法,还可以在需要时完成创建实例、调用方法以及访问字段的工作。反射是Java被视为动态(或准动态)语言的关键。Java反射机制主要提供一下功能: 在运行时判断任意一个对象所属的类; 在运行时构造任意一
2016-10-26 18:05:14 728
原创 Zookeeper学习笔记(2)——工作原理
1. 集群节点ZK集群中的节点有3种角色和4种状态。3种角色: leader:领导者 follower:随从,参与选举和投票,可被选举为领导者。 observer:接受者,不参与选举和投票 4种状态: LOOKING:当前Server不知道leader是谁,正在搜寻。 LEADING:当前Server即为选举出来的leader。 FOLLOWING:leader已经选举出来,当前Server与之同步
2016-10-26 17:58:03 519
原创 zookeeper学习笔记(1)——简介
设计目标 数据模型 命名空间 状态更新和监听 一致性保证 操作原语集 参考文献ZooKeeper是一个分布式应用程序协调服务,通过暴露一个简单的操作原语集,为分布式应用程序提供数据同步服务。1. 设计目标 最终一致性:client不论连接到哪个Server,展示给它都是同一个视图,这是zookeeper最重要的性能。 可靠性:具有简单、健壮、良好的性能,如果消息m被到一台服务器接受,那么它将被所有的
2016-10-26 17:47:21 523
原创 Elasticsearch学习笔记(1)——Lucene简介
Elasticsearch是一款优秀的全文索引产品。Elasticsearch基于Lucene构建索引和进行查询,理解Lucene的相关知识有助于更深入的学习和使用Elasticsearch。1. Lucene简介Lucene是一款成熟的、高性能的、可扩展的、轻量级的、功能强大的全文索引框架。关键概念其关键概念包括: Document:数据源,由Field组成。 Field:Document的组成部
2016-10-26 17:39:54 814
原创 JVM原理及调优(5)——垃圾回收和调优
认识GC 1 GC 2 GC工作 4 GC算法 5 GC类型 监控GC 调优GC 当应用规模达到一定量级时,GC对项目性能的影响会放大,我们需要通过GC调优实现了项目性能的提升。这不仅考验着我们对GC工作原理的理解,也考验着我们对应用特性的理解,是通往优秀程序员的必由之路。 下面,我们通过浅显易懂的文字介绍一下GC调优。 1. 认识GC 首先,我们需要认识GC。知道什么是G
2016-10-21 13:48:56 1960
敏捷软件开发:原则、模式与实践(Agile.software.development:Principles,Patterns,and.Practices)中英版
2013-08-19
快速软件开发(Rapid.Development: Taming.Wild.Software.Schedules)中英版
2013-08-18
分析模式:可复用的对象模型(Analysis.Patterns:Reusable.Object.Models)(中英版)
2013-08-15
企业应用架构模式(Patterns of Enterprise Application Architecture)(中英版
2013-08-14
人件(PeopleWare:Productive.Projects.and.Teams)(中英版)
2013-08-13
Java并发编程:设计原则与模式(Concurrent.Programming.in.Java)(中英版)
2013-08-13
Java并发编程实践(Java Concurrency in Practice) (中英版)
2013-08-08
Principles.of.Distributed.Database.Systems,3ed,Ozsu.Valduriez(分布式数据库系统原理)
2013-08-19
计算机程序的构造与解释(Structure.and.Interpretation.of.Computer.Programs)中英版
2013-08-18
UNIX环境高级编程(Advanced.Programming.in.the.UNIX.Environment)中英版
2013-08-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人