JavaShuo
栏目
标签
Java博客大汇总
时间 2019-11-16
标签
java
博客
汇总
栏目
Java
繁體版
原文
原文链接
目录介绍
01.Java基础[30篇]
02.面向对象[15篇]
03.数据结构[27篇]
04.IO流知识[11篇]
05.线程进程[9篇]
06.虚拟机[12篇]
07.类的加载[7篇]
08.反射原理[16篇]
09.Java并发[27篇]
10.Java异常[11篇]
11.枚举与注解[10篇]
12.设计模式[8篇]
13.Java深刻[8篇]
好消息
博客笔记大汇总【16年3月到至今】,包括Java基础及深刻知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,固然也在工做之余收集了大量的面试题,长期更新维护而且修正,持续完善……开源的文件是markdown格式的!同时也开源了生活博客,从12年起,积累共计N篇[近100万字,陆续搬到网上],转载请注明出处,谢谢!
连接地址:
https://github.com/yangchong211/YCBlogs
若是以为好,能够star一下,谢谢!固然也欢迎提出建议,万事起于忽微,量变引发质变!
01.Java基础
01.Java 关键字汇总
常见的关键字,重要关键字说明,持续汇总中。
02.Java基础知识
知识点:基础知识点总结,标识符规则,进制,字符编码,运算符,方法,内存分配以及栈和堆
03.基本数据类型
基本类型有哪些,基本类型转换,字面值有哪些类型,表达式中的自动类型提高
04.常见的API方法
知识点:经常使用api
06.int和Integer深刻分析
知识点:Integer的值缓存的原理,理解自动装箱和拆箱,如何验证int类型是否线程安全,Java 原始数据类型和引用类型局限性,原始类型线程安全问题等等
07.基础类型缓存池概念
new Integer(123) 与 Integer.valueOf(123) 的区别,基本类型对应的缓冲池
09.Java运算符
有哪些运算符,算术运算符,位运算符,关系运算符,逻辑运算符
10.访问权限控制
访问控制符有哪些,类访问控制符,类成员访问控制符
12.static深刻理解
static变量存储位置,用static静态变量潜在性问题,静态变量的生命周期,静态变量什么时候销毁,静态引用的对象回收
13.finial深刻理解
final关键字概述,final,finally,finalize之间的比较
14.基本数据类型存储位置
局部变量存储位置,成员变量存储位置,静态变量存储位置
20.泛型基础
泛型的概述,引入泛型的目的,泛型初步探索,泛型的格式,泛型的好处
21.泛型的使用
泛型类的概述及使用,泛型接口的概述和使用,泛型高级之通配符,泛型只能使用引用类型
22.泛型可读性
编译器类型检查,可读性和灵活性,泛型方法和泛型类的比较
23.泛型擦除
什么是泛型擦除,泛型擦除案例
24.泛型与反射
经过反射得到泛型的实际类型参数
25.泛型的限制
不能实例化类型参数,对静态成员的限制,对泛型数组的限制,对泛型异常的限制
26.String类深刻理解
String的建立机理,StringBuffer/StringBuilder,String类的考点分析,String不可变的好处
30.switch对整型支持
Switch支持哪些类型,switch对整型支持,switch对字符串支持,switch对字符型支持
02.面向对象
01.面向对象基础
面向对象的思想【思想,特征】,类和对象及其应用,对象的内存图,成员变量和局部变量区别等等
02.Java封装
什么是封装,封装好处分析,封装的原则,封装的案例展现
03.Java继承
继承简单概述,继承格式,继承好处和弊端,继承的注意事项,继承中成员变量的关系,不支持多继承影响
04.Java多态
什么是多态,多态的实现条件,多态实现方式,多态好处和弊端
05.Java接口
什么是接口,接口特色,Marker Interface,Java 8接口变化,接口如何被加载
06.Java抽象类
为什么须要抽象类,抽象类特色,抽象类能够new吗,抽象类设计注意要点,抽象类名做为形参
07.抽象类和接口
理解抽象和接口概念,抽象和接口语法上不一样,抽象和接口编程角度不一样,抽象类与接口的区别
08.Java内部类
Java中的内部类分类,内部类概述和访问特色,内部类和外部类联系,匿名内部类介绍,成员内部类介绍,为何内部类调用的外部变量必须是final修饰的?
08.形参和实参
什么是形参和实参,类名做为形式参数,抽象类名做为形式参数,接口名做为形式参数
09.Java构造方法
构造方法概述和做用,构造方法注意事项,看一个构造方法案例,构造方法加载机制
10.方法重载和覆盖
什么是方法重写,什么是方法重载,父类的静态方法可否被子类重写
11.包和权限修饰符
import关键字的概述和使用,四种权限修饰符的测试,类及其组成所使用的常见修饰符
12.代码块深刻理解
待完善
13.Java绑定机制
什么是绑定,静态和动态绑定,动态绑定编译原理,动态绑定运行原理,多态的划分状况
14.值传递和引用传递
基本类型和引用类型,什么是值传递,什么是引用传递,经过案例分析
15.面向对象原则
三大特色,六大原则,实践案例分析
03.数据结构
01.常见数据结构
常见的数据类型,数组,集合,栈,堆,链表,图,队列,树。主要是罗列开发中比较常见的数据类型……
02.集合基础介绍
集合归纳与总结,集合的遍历,迭代器的原理,List集合如何选择合适的
03.List集合
ArrayList,Vector,LinkedList等集合的特色与区别。ArrayList的扩容消耗,List怎么实现排序?System.arraycopy()和Arrays.copyOf()方法区别与联系,list集合读写机制和读写效率,ArrayList核心源代码分析等等
04.Set集合
HashSet,LinkedHashSet,TreeSet等集合特色和区别
05.Map集合
HashMap,LinkedHashMap,TreeMap等集合案例分享和基础内容介绍
06.ArrayList1
ArrayList由来介绍,ArrayList的特色,ArrayList如何使用,ArrayList结构图,ArrayList类声明
07.ArrayList2
ArrayList内部结构,构造方法,add(E e)方法,set和get函数,remove(Object o),ArrayList扩容消耗
08.ArrayList3
ArrayList的序列化,ArrayList的clone,System.arraycopy()和Arrays.copyOf(),ArrayList的Fail-Fast,List怎么实现排序
09.LinkedList1
LinkedList简介,内部结构分析,LinkedList类声明,几个经常使用的方法,list效率比较
10.LinkedList2
构造方法和成员变量,add方法,get方法,indexOf方法,remove()方法
11.HashMap1
HashMap简单使用 ,查找数据,遍历数据,HashMap特色,HashMap底层实现
12.HashMap2
HashMap内部结构,构造函数,put(K key, V value),get(Object key),resize()扩容,Hash函数实现
13.HashMap3
容量和装载因子,HashTable和HashMap,hashCode和equal,Key为什么须要不可变,HashMap为啥要扩容,HashMap的table下标
14.HashMap4
HashMap线程问题,测试HashMap效率,HashMap性能分析
15.TreeMap1
TreeMap特色,什么时候用TreeMap,TreeMap简单使用,案例训练
16.TreeMap2
构造函数和成员变量,put插入函数源码,get获取函数源码,如何保证有序性
17.ConcurrentHashMap1
HashMap使用的弊端,ConcurrentHashMap底层知识点
18.ConcurrentHashMap2
ConcurrentHashMap内部结构,table初始化initTable(),put插入数据操做
20.LinkedHashMap1
LinkedHashMap使用,LinkedHashMap特色,为什么有LinkedHashMap,节点类说明介绍
21.LinkedHashMap2
成员变量分析,构造函数分析,put插入元素分析,get访问元素,移除元素源码分析
22.HashSet
HashSet特色,HashSet如何去重,HashSet源码分析
23.LinkedHashSet
LinkedHashSet的特色,LinkedHashSet源码分析
24.TreeSet
TreeSet特色说明,TreeSet的案例,TreeSet原理,TreeSet源码分析
27.CopyOnWriteArrayList
什么是CopyOnWriteArrayList,它与ArrayList有何不一样?CopyOnWriteArrayList读写分离
04.IO流知识
01.IO流基础介绍
IO流概述及其前奏,IO流总体学习知识体系有哪些东西,IO流的概念,输入流和输出流
02.IO流字符与字节
什么是字节,什么是字符,unicode编码,如何获取字节,字节和字符区别,String中编解码问题
03.IO流之File类
File类介绍,File类构造函数,建立与删除方法,File判断方法,File获取方法
05.IO流体系图
IO流体系图,按照流向进行划分图,按操做方式分类结构图,InputStream字节输入流,OutputStream字节输出流,Reader字符输入流,Writer字符输出流
06.IO字节流案例
什么是字节流,字节流复制文本文件,字节流复制MP3,字节流四种方式复制MP3效率比较
07.IO字符流案例
字符流OutputStreamWriter,字符流InputStreamReader,字符流读写方式,字符流复制文本文件,复制单级文件夹,复制指定目录下指定后缀名的文件并修更名称
08.Buffer高效字节流
什么是Buffer缓冲流,字节缓冲流BufferedOutputStream,字节缓冲流BufferedInputStream
09.Buffer高效字符流
什么是高效字符流,字符缓冲流的特殊功能,高效字符流复制文本文件,集合数据存储到文本文件,文本数据存储到集合中,随机获取文本中姓名
10.Java深拷贝和浅拷贝
如何实现对象克隆?克隆有哪些方式?深克隆和浅克隆有何区别?深克隆和浅克隆分别说的是什么意思?浅拷贝会建立新的对象吗?对于基本类型拷贝的是什么?怎么样实现浅拷贝,浅拷贝先后对象地址值会同样吗?
11.RandomAccessFile
RandomAccessFile简介,RandomAccessFile构造函数,RandomAccessFile使用
05.线程进程
01.线程基础知识
什么是线程,多线程意义,并行和并发,JVM启动线程
02.进程基础知识
什么是进程,多进程的意义,进程状态有哪些,进程状态转换,进程通讯,进程死锁,进程调度算法
03.线程和进程
进程与线程概念区别,进程与线程调度区别,进程与线程并发行区别,进程与线程拥有资源对比,进程与线程系统开销对比
04.Thread建立
建立线程的方式,继承Thread类建立线程类,经过Runnable接口建立线程类,经过Callable和Future建立线程,三种建立线程区别
05.Thread控制
线程执行流程,线程调度,sleep休眠线程,join加入线程,yield礼让线程, setDaemon守护线程,stop中断线程,start开启线程
05.Thread问题
start和run区别,为什么不能重复start,wait和sleep方法,run方法的做用,Runnable和Callable
06.Thread关闭
结束Thread线程的几种方法,使用退出标志终止线程,使用interrupt()方法终止线程,使用stop方法终止线程
07.线程通讯方式
线程间通讯的两种方式 ,wait()/notify(),notify()方法使用注意事项,Condition实现等待/通知
08.生产者消费者
生产者消费者模型发生场景,一辈子产与一消费案例,多生产与多消费案例,会遇到哪些关键问题,如何解决关键问题
09.Thread中join
Thread的join()的含义是等待该线程终止,即将挂起调用线程的执行,直到被调用的对象完成它的执行。join方法实现原理分析。
06.虚拟机
01.Java内存分配机制
JVM内存管理图,JVM内存分配的几种策略,内存泄漏简单介绍
02.Java垃圾回收机制
GC回收机制,GC过程与对象的引用类型关系,检测垃圾的算法,处理垃圾的算法,分代收集算法(当今最经常使用的方法),将对象按其生命周期划分
03.Java对象的访问定位方式
Java对象的访问定位方式,经过句柄访问方式,经过直接指针访问方式,这两种方式区别和优点
04.Java对象销毁分析
Java对象销毁分析,JVM内存分配与回收,判断对象是否死亡,不可达的对象并不是“非死不可”,如何判断一个常量是废弃常量,如何判断一个类是无用的类,GC回收算法详解
06.Java内存分配案例
JVM加载类过程,对构造方法赋值,经过对象调用方法
07.Java内存分配机制
JVM内存分配的几种策略,堆和栈的区别有哪些
08.GC垃圾回收机制
JVM是怎么分配内存的,识别哪些内存是垃圾须要回收,最后才是用什么方式回收,栈的内存管理是顺序分配的,并且定长,不存在内存回收问题;而堆 则是为java对象的实例随机分配内存,不定长度,因此存在内存分配和回收的问题
09.GC回收什么
理解内存分配,回收那些对象,Java对象引用
10.GC检测垃圾算法
检测垃圾算法有哪些,什么是引用计数法,什么是可达性分析算法
11.GC处理垃圾算法
处理垃圾的算法有哪些,标记-清除(Mark-sweep),复制(Copying),标记-整理(Mark-Compact),分代收集算法(当今最经常使用的方法)
12.GC对对象划分
如何对对象划分,年轻代对象说明,年老代对象说明,GC中对象的六种可触及状态
07.类的加载
01.Java类加载器
类加载器分类
02.类的加载机制
Java对象的建立过程 ,Java内存区域 ,Java对象的访问定位方式 ,Java对象销毁分析 ,类的加载过程。类信息,常量,变量,方法分别放到内存中哪里?本地方法栈和Java虚拟机栈有什么区别?本地方法栈在什么状况下会形成OOM?Java对象访问定位方式有哪些?主要有什么区别?为何说使用指针效率更高?
04.类的生命周期
什么是类的生命周期?类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。都作了些什么?
05.双亲委派机制
详细介绍一下什么是双亲委派机制?它的工做流程是什么?为什么说具备不一样优先级?代码实现双亲委派模型?
06.Java对象的建立
对象的建立的条件有哪些?
07.类执行测试
类在加载过程当中的流程
08.反射原理
01.反射机制介绍
Java反射机制定义,反射的应用场景,Class与.class文档,反射之动态交互,使用反射的初衷
02.反射查看类信息
反射查看类信息,得到Class对象 ,Class.forName(),类.class, 对象.getClass()
03.获取对象信息
获取class对象的信息,获取对象的变量,获取class对象的方法,获取class对象的构造函数,获取对象信息案例
04.反射实际使用
反射生成类实例对象,反射调用类的方法,反射访问成员变量值
05.利用Class创建对象
创建实例对象
06.操做成员方法
反射调用公有方法,反射调用私有方法
08.反射知识点深刻
setAccessible暴力访问,invoke()方法执行说明
09.泛型和反射
泛型和Class类,使用反射来获取泛型信息,泛型和反射案例
12.反射攻击单利
如何防止反射序列化攻击单例
13.反射性能研究
经过分析案例来看一下用反射和不用反射的执行速度
14.反射的利弊
反射包括了一些动态类型,因此JVM没法对这些代码进行优化。反射可能会致使意料以外的反作用--代码有功能上的错误,下降可移植性。
15.动态代理
代理类是在运行时生成的。也就是说 Java 编译完以后并无实际的 class 文件,而是在运行时动态生成的类字节码,并加载到JVM中。
16.反射与代理
主要涉及两个类,这两个类都是java.lang.reflect包下的类,内部主要经过反射来实现的。
09.Java并发
02.多线程并发案例
继承Thread类的方式卖电影票案例,实现Runnable接口的方式卖电影票,买电影票出现了同票和负数票的缘由分析,线程安全问题的产生缘由分析,同步代码块的方式解决线程安全问题
03.多线程三要素
什么是线程安全,线程安全级别,多线程三要素,如何理解原子性,如何理解可见性,如何理解有序性
04.处理多线程并发
有哪些方式处理多线程并发,如何保证原子性,如何保证可见性,如何保证有序性,平时项目中使用锁和synchronized比较多,而不多使用volatile,难道就没有保证可见性?
06.Synchronize1
Synchronize用法,同步代码块synchronized (this),同步方法synchronized void test,Synchronize做用于方法和静态方法区别,sychonized method 和 synchonized代码块的效率问题
07.Synchronize2
简单理解Synchronize锁机制,同步方法和代码块实现原理
08.ReentrantLock
ReentrantLock是什么,ReentrantLock使用方法,ReentrantLock锁机制测试,什么时候用ReentrantLock,
09.Synchronize和ReentrantLock区别
Synchronize和ReentrantLock区别,Synchronize在编译时如何实现锁机制,ReentrantLock锁机制测试案例分析,公平锁和非公平锁有何区别等等
14.deadLock3种类型
死锁产生的条件,静态的锁顺序死锁,动态的锁顺序死锁,协做对象之间发生的死锁
15.deadLock详谈
Java中致使死锁的缘由 ,出现死锁须要知足条件 ,死锁诊断步骤
16.volatile介绍
volatile轻量级锁,volatile测试案例,volatile实现原理 ,volatile的happens-before关系 ,volatile的内存语义 ,volatile的应用场景
19.CAS深度解析
CAS简单介绍,CAS操做案例分析,CAS存在的问题
20.线程池基础介绍
线程池的优点,ThreadPoolExecutor参数,线程池执行流程,线程池的使用技巧
10.Java异常
01.Exception 和 Error
异常体系结构图,Throwable类经常使用方法,异常处理关键字
02.异常之Error
什么是Error(错误),常见的异常Error有哪些?
03.异常之Exception
什么是Exception,常见的Exception有哪些,编译期异常和运行期异常
04.异常处理机制
什么是抛出异常,异常先抛出后捕获,异常处理两种方式,异常的注意事项,如何选合适处理方法
05.jvm处理异常
待更新
06.try...catch异常
try...catch处理异常,try-catch-finally规则,try...catch使用建议,catch执行注意要点,finally必定会执行吗,try...catch语句块的执行顺序,多条catch子句
07.throws抛出异常
throws的用法介绍,throw的用法介绍,throws和throw区别
08.异常之链式异常
未捕获的异常,链式异常
09.finally-return深刻
验证finally执行,finally中return和try的return,try块里的return必定执行吗
10.自定义异常
11.处理异常一些建议
尽可能捕获原始的异常,不要打印堆栈后再抛出异常,不要用异常处理机制代替判断
11.枚举与注解
01.枚举基础
什么是枚举,枚举简单使用,枚举是类类型,枚举的一些方法,枚举实现接口
03.Java元数据
什么是元数据,元数据的做用,Java平台元数据
04.Java注解概念
注解(Annotation)的概念,注解的属性分类,注解运行时段分类,自定义注解分类,实际注解案例
05.Java注解使用
内建注解使用(几个比较经常使用的注解:@Override、@Deprecated、@SuppressWarnings以及@FunctionalInterface这4个注解),元Annotation使用
05.Java注解解析
建立自定义注解,经过反射技术来解析自定义注解。
07.自定义注解
自定义annotation注解,@Retention做用,@Target(ElementType.TYPE)做用,注解的默认值,注解的继承,注解中方法
08.编译期注解案例
什么是编译器注解,使用注解替代枚举,使用注解限定类型
09.运行期注解案例
什么是运行期注解,案例之setContentView分析
10.注解代替枚举
Android避免使用Enum,使用注解替代枚举的案例分析
12.Java深刻
01.四种引用比较与源码分析
强引用,软引用,弱引用,虚引用的使用场景与区别,软引用SoftReference源码,弱引用WeakReference源码,虚引用PhantomReference源码分析
02.Java内存分配机制及内存泄漏
Java采用GC进行内存管理思惟导图,JVM内存分配的几种策略,GC简单介绍,内存泄漏带来的影响,GC回收机制,垃圾回收思路及方法
03.Hash和HashCode深刻理解
Hash的定义,Hash的使用场景,HashCode是什么,为何要重写HashCode,可直接用hashcode判断两个对象是否相等吗,Hash表是什么 ,Hash中的算法应用 ,Hash在Java中的应用场景
05.transient详解
transient的做用,transient案例,transient使用小结,transient思考
06.Lambda表达式
Lambda表达式的基础知识,函数式接口,Lambda使用示例,块Lambda表达式,Lambda表达式访问变量,Lambda方法引用
10.Jdk1.8常见新特性
Lambda表达式和函数式接口,接口的默认方法和静态方法,方法引用,重复注解,更好的类型推断
11.Jdk1.8编译器的新特性
如何在运行时得到Java程序中方法的参数名称
12.Jdk1.8官方库新特性
Optional,Streams,Base64
其余介绍
01.关于博客汇总连接
1.
技术博客汇总
2.
开源项目汇总
3.
生活博客汇总
4.
喜马拉雅音频汇总
5.
其余汇总
02.关于个人博客
github:
https://github.com/yangchong211
知乎:
https://www.zhihu.com/people/yczbj/activities
简书:
http://www.jianshu.com/u/b7b2c6ed9284
csdn:
http://my.csdn.net/m0_37700275
喜马拉雅听书:
http://www.ximalaya.com/zhubo/71989305/
开源中国:
https://my.oschina.net/zbj1618/blog
泡在网上的日子:
http://www.jcodecraeer.com/member/content_list.php?channelid=1
邮箱:yangchong211@163.com
阿里云博客:
https://yq.aliyun.com/users/article?spm=5176.100-
239.headeruserinfo.3.dT4bcV
segmentfault头条:
https://segmentfault.com/u/xiangjianyu/articles
掘金:
https://juejin.im/user/5939433efe88c2006afa0c6e
相关文章
1.
Java博客大汇总
2.
博客笔记大汇总
3.
Android博客大汇总
4.
大牛博客汇总
5.
博客汇总
6.
Phylab 博客汇总
7.
技术博客笔记大汇总
8.
大前端知识汇总博客
9.
大厂技术博客汇总
10.
冲刺博客汇总
更多相关文章...
•
Docker 资源汇总
-
Docker教程
•
Web 词汇表
-
网站建设指南
•
JDK13 GA发布:5大特性解读
•
Java 8 Stream 教程
相关标签/搜索
博客
总汇
汇总
博大
技术博客
博客园
博客迁移
博客转移
博客搬家
博客话题
Java
Docker命令大全
Hibernate教程
MyBatis教程
java
Java 8
Java Agent
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
Mud Puddles ( bfs )
2.
ReSIProcate环境搭建
3.
SNAT(IP段)和配置网络服务、网络会话
4.
第8章 Linux文件类型及查找命令实践
5.
AIO介绍(八)
6.
中年转行互联网,原动力、计划、行动(中)
7.
详解如何让自己的网站/APP/应用支持IPV6访问,从域名解析配置到服务器配置详细步骤完整。
8.
PHP 5 构建系统
9.
不看后悔系列!Rocket MQ 使用排查指南(附网盘链接)
10.
如何简单创建虚拟机(CentoOS 6.10)
本站公众号
欢迎关注本站公众号,获取更多信息
相关文章
1.
Java博客大汇总
2.
博客笔记大汇总
3.
Android博客大汇总
4.
大牛博客汇总
5.
博客汇总
6.
Phylab 博客汇总
7.
技术博客笔记大汇总
8.
大前端知识汇总博客
9.
大厂技术博客汇总
10.
冲刺博客汇总
>>更多相关文章<<