java se
文章平均质量分 86
summerZBH123
这个作者很懒,什么都没留下…
展开
-
String、StringBuffer、StringBuffer 分析
关于String 类容易错误的几点内容,首先我们来看String 类的几种方法public class Test { public static void main(String[] args) { String a = "hello"; String b = new String("hello"); System.out.printl...原创 2018-05-21 23:44:06 · 280 阅读 · 0 评论 -
JAVA反射中Class类源码分析及常见面试题
这篇博客主要是来分析下java反射机制实现的核心类Classpublic class Test { public static void main(String[] args) { Class clazz = String.class; Constructor[] constructors = clazz.getConstructors(); }}...原创 2018-07-10 20:46:06 · 839 阅读 · 0 评论 -
JAVA当中的泛型
JAVA泛型其实是类型的类型,比如List数组我们可以接受任意类型的元素存储在数组当中,也可以在定义数组时,指定集合当中只存储某一类型。可以说泛型给我们的程序代码提供了可扩展性。关于泛型的声明,如何使用,这篇暂不介绍,我们从比较容易困惑的地方开始<? extend T> T可以是任意具体类型举个例子如果我们定义了一个方法,接受List<Number> 类型的参数,那我们是否...原创 2018-07-09 18:40:32 · 347 阅读 · 0 评论 -
JAVA当中内部类
成员内部类将一个类定义在另一个类内部,成员内部类可以访问其所在类的内部任何数据信息,私有变量,共有变量,静态变量,以及成员方法,静态方法,等所有属于外部类的代码对于外部类,如果想要访问内部类的一些方法或者属性,需要先构建好一个内部类对象public class Outer { private double radius = 0; public static int count = ...原创 2018-07-09 18:40:47 · 153 阅读 · 0 评论 -
ConcurrentHashMap1.8源码源码分析(2)
上篇内容大概介绍了ConcurrentHashMap在看源码时,需要了解的一些知识概念,整个数据结构以及里面常用的属性含义。参见ConcurrentHashMap 1.8源码分析(1) 这篇我们从它比较基础的操作开始分析 初始化操作 对于一个新创建的ConcurrentHashMap,我们会给一个table为空的数组,也就是说我们并不会去初始化等,...原创 2018-05-30 00:58:41 · 901 阅读 · 0 评论 -
ConcurrentHashMap 1.8源码分析(1)
概述:这篇文章包括后面几篇文章是来介绍关于ConcurrentHashMap 1.8的源码结构部分,主要是记录我在学习这个源码的一些知识感悟。 储备知识: 1、 需要了解HashMap的相关源码和结构,可以参照我之前的分析HashMap源码分析 2、关于红黑树的一些基本知识TreeMap, 也是之前有分析过的TreeMap红黑树基础...原创 2018-05-30 00:22:15 · 1018 阅读 · 0 评论 -
TreeMap红黑树基础相关内容介绍
简介:红黑树是为了平衡二叉树而存在的一种树,二叉树在生成的时候,是非常容易失衡的,造成最坏的情况就是一边倒(左子树,或者右子树),这样会造成检索效率降低。 红黑树是满足以下条件: 1、每个节点要么是红色,要么是黑色 2、根节点必须是黑色 3、红色节点不能连续(与红色节点相连的节点都不能是红色) 4、对于每个节点,从该节点到叶子节点(null)的任何...原创 2018-05-28 01:14:06 · 316 阅读 · 0 评论 -
ArrayList LinkedList Vector 源码对比分析
前言:本篇文章的分析是基于jdk1.8ArrayList分析对于ArrayList 网上对于其分析也比较常见,其源码也比较简单,我这里只是记录下一些开发中容易遗漏和采坑的点ArrayList 主要包括的其实就是一个Object 类型的数组,一些参数信息1、关于构造方法,ArrayList 提供的构造方法,我们比较常用,无参构造方法/** * Constructs an ...原创 2018-05-22 18:23:41 · 274 阅读 · 0 评论 -
HashMap源码分析
首先,先对hashMap有个大概的认识,之前文章ArrayList LinkedList Vector 源码对比分析中,介绍了ArrayList 和LinkedList 他们的各自优缺点,HashMap是将二者进行了一个结合,其内部维护了一个数组,其中数组的元素是一个链表(单向链表),Entry<k,v>[] table 关于HashMap先了解其中比较重要的几个属性:th...原创 2018-05-27 02:21:50 · 783 阅读 · 0 评论 -
Volatile关键字介绍
简述:volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”,可见性的意思是一个线程修改一个共享变量时,另一个线程可以读到这个修改的值,如果volatile使用恰当的话,它比synchronized的使用成本更低,因为它不会引起线程的上下文切换和调度。在了解volatile关键字在java中的使用之前,我们需要先连接几个概念 java内...原创 2018-06-02 20:30:15 · 9662 阅读 · 4 评论 -
JAVA内存模型
这篇日志主要是来记录我在学习java内存模型的时候,需要了解的知识点。关于java内存模型这部分内容网上也有很详细的资料,这篇主要是做一个知识的梳理,总结。什么是java内存模型?在学习java内存模型的时候,我去网上找了很多资料,我发现大部分的文章,讲述的java内存模型都是这样子的主要是就是在介绍关于堆、栈啊,方法区,程序计数器之类的,这里需要明确一点,以上的模型图,是在描述java虚拟机的内...原创 2018-07-09 19:12:21 · 790 阅读 · 0 评论