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.
升级Gradle后报错Gradle‘s dependency cache may be corrupt (this sometimes occurs
2.
Smarter, Not Harder
3.
mac-2019-react-native 本地环境搭建(xcode-11.1和android studio3.5.2中Genymotion2.12.1 和VirtualBox-5.2.34 )
4.
查看文件中关键字前后几行的内容
5.
XXE萌新进阶全攻略
6.
Installation failed due to: ‘Connection refused: connect‘安卓studio端口占用
7.
zabbix5.0通过agent监控winserve12
8.
IT行业UI前景、潜力如何?
9.
Mac Swig 3.0.12 安装
10.
Windows上FreeRDP-WebConnect是一个开源HTML5代理,它提供对使用RDP的任何Windows服务器和工作站的Web访问
本站公众号
欢迎关注本站公众号,获取更多信息
相关文章
1.
Java博客大汇总
2.
博客笔记大汇总
3.
Android博客大汇总
4.
大牛博客汇总
5.
博客汇总
6.
Phylab 博客汇总
7.
技术博客笔记大汇总
8.
大前端知识汇总博客
9.
大厂技术博客汇总
10.
冲刺博客汇总
>>更多相关文章<<