加载中
「终!」 Java源码分析专题系列之【String类】带你进入String类的易错点和底层本质分析!

字符串拼接及创建的案例分析 案例一 String a = "test"; String b = "test"; System.out.println(a.equals(b)); // true System.out.println(a == b); // true System.out.println(System.i...

Java源码分析专题系列之【String类】带你实战使用String的功能特性

前提回顾 java.lang.String类用于描述字符串,Java程序中所有的字符串字面值都可以使用该类的对象加以描 述,如:"abc"。 该类由final关键字修饰,表示该类不能被继承。 从jdk1.9开始该类的底...

Java源码分析专题系列之【String类】带你攻克String类创建的难点分析

字符串常量池引入 String是一个引用类型,这意味着String类型的实例化与其它对象一样,相较于基本数据类型,时间和空间的消耗都是较大的,但是由于String的使用频率非常高,JVM为了提高性能和...

Java源码分析专题系列之【String类】带你一起探究字符串不可变的特性

前提介绍 在Java中String类的使用的频率可谓相当高。它是Java语言中的核心类,在java.lang包下,主要用于字符串的比较、查找、拼接等等操作。如果要深入理解一个类,最好的方法就是看看源码:...

Java并发编程专题系列之站在Linux操作系统角度去看Thread(线程)

Linux进程与线程 无论是Java还是其他语言,无论如何定义线程模型和实现,基于底层角度而言都要归属到操作系统层面上的线程(LWP:轻量级线程技术映射到了内核线程)概念就不提了。 Richard ...

Java源码分析专题系列之深入分析JDK动态代理的分析(源码深入)

动态代理步骤 创建一个实现接口InvocationHandler的类,它必须实现invoke方法 创建被代理的类以及接口 通过Proxy的静态方法 通过Proxy的静态方法 ProxyObject proxyObject = new ProxyObjec...

Java技术专题-JVM研究系列(35)认识一下线程上下文类加载器实现【逆向加载机制】

前提概要 线程上下文类加载,就是当前线程所拥有的类加载器,可通过 Thread.currentThread() 获取当前线程。 线程上下文类加载器(Thread Context ClassLoader)可以通过java.lang.Thread类的...

Java实战案例专题系列【知识盲点关于jar包的点点滴滴】

每日一句 不同的人生,有不同的幸福。去发现你所拥有幸运,少抱怨上苍的不公,把握属于自己的幸福。你,我,我们大家都可以经历幸福的人生。 背景介绍 经常会头疼于一个jar包是如何制作的,包...

Java源码分析专题系列之【HashMap】深入浅出的源码分析(JDK1.7版本)

每日一句 有望得到的要努力,无望得到的不介意,则无论输赢姿态都会好看。 概念回顾 HashMap由数组+链表组成的,数组是HashMap的主体,链表则是主要为了解决哈希冲突而存在的,如果定位到的数...

06/02 16:23
147
Java并发编程专题系列之360度全方位的教你认识网络IO模型

每日努力 请一定要有自信。你就是一道风景,没必要在别人风景里面仰视。 网络IO模型的分类 BIO 伪异步 NIO AIO BIO BIO是一个典型的网络编程模型,是通常我们实现一个服务端程序的过程。 步骤...

Java并发编程专题系列之从源码分析Mutex锁的运行原理

并行编程之条件变量(posix condition variables) 在整理Java LockSupport.park()的东东,看到了个"Spurious wakeup",重新梳理下。 #include <pthread.h> struct msg { struct msg m_next;...

05/31 10:59
3.8K
Java源码分析专题系列之【ThreadPoolExecutor】深入浅出的源码分析

线程池执行任务的流程 如果线程池工作线程数<corePoolSize,创建新线程执行task,并不断轮训t等待队列处理task。 如果线程池工作线程数>=corePoolSize并且等待队列未满,将task插入等待队列。...

Java源码分析专题系列之【ClassLoader】深入浅出的源码分析

每日一句 在人生的道路上,即使一切都失去了,只要一息尚存,你就没有丝毫理由绝望。因为失去的一切,又可能在新的层次上复得。 前提概要 Java体系中的所有类,必须以【class字节码文件】必须...

Java源码分析专题系列之【ThreadLocal】深入浅出的源码分析

每日一句 一个人的成功不取决于他的智慧,而是毅力。 基本介绍 ThreadLocal是对Thread内部的局部变量ThreadLocalMap的维护类。当线程持有多个ThreadLocal的操作时,会在ThreadLocalMap中通过...

Java源码分析专题系列之【HashMap】深入浅出的源码分析(JDK1.8版本)

【每日一句】 一个人最大的挑战,是如何去克服自己的缺点。 【基本原理】 HashMap是一个基于map接口实现的散列表,存储内容是键值对 (key-value) 映射,并且键和值都可以使用null,因为key不...

Java底层原理专题系列之带你看透Lambda表达式的本质

每日一句 只要下定决心,过去的失败,正好是未来行动的借鉴;只要不屈不挠,一时的障碍,正好是推动成功的力量。 前提回顾 之前写完了一篇关于Lambda系列的原理分析【Java底层原理专题系列之...

Java并发编程专题系列之从底层分析LockSupport原理机制

从底层分析LockSupport原理机制 知识点 LockSupport的介绍 LockSupport类是Java6(JSR166-JUC)引入的一个类,提供了基本的线程同步原语。LockSupport实际上是调用了Unsafe类里的函数,归结到U...

Java并发编程专题系列之深入分析synchronized(进阶篇)

技术回顾 在此让我们回顾一下Java对象的内存结构,为什么要回顾内存结构?因为synchronized同步锁,采用的底层所机制的monitor就和内存对象有关系,所以我们先回顾一下Java内存结构。 Java对象...

Java并发编程专题系列之从底层角度去分析线程的实现原理

每日一句 当别人放弃的时候,你还在坚持,你就已经成功了! 前提概要 并发并不一定只依赖多线程的技术,但编程领域里谈论并发大多数情况下都与线程脱离不了关系。 线程的介绍 线程是比进程更...

Java并发编程专题系列之深入分析synchronized(基础篇)

synchronized同步关键字简介 synchronized是属于JVM层面的一个关键字,底层是通过一个monitor对象(管程对象)来完成,由于wait()/notify()等方法也依赖于monitor对象,所以只有在同步的块或者...

05/21 00:19
5.3K

没有更多内容

加载失败,请刷新页面

返回顶部
顶部