【合集】Java进阶——Java深入学习的笔记汇总 & 再论面向对象、数据结构和算法、JVM底层、多线程、类加载、

前言

spring作为主流的 Java Web 开发的开源框架,是Java 世界最为成功的框架,持续不断深入认识spring框架是Java程序员不变的追求;而spring的底层其实就是Java,因此,深入学习Spring和深入学习Java是硬币的正反面,两者相辅相成,相互促进。

本篇博客是一篇不定期持续更新的博客,是一些Java深入学习的笔记汇总。

目录

面向对象专题

再论面向对象

Java进阶 之 再论面向对象(1)------面向对象的编程思想 & Java中的类和对象 & 深入认识对象,内存图解+变量作用域+参数传递

封装 和 关键字private,this

Java进阶 之 再论面向对象(2)------类的定义及对象的使用 & 封装Encapsulation & 关键字private,this

详解构造方法Constructor

Java进阶 之 再论面向对象(3)------构造方法Constructors 以及 调用的分析 & JavaBean的概念 & 构造函数中this关键字

final关键字

Java进阶(2)------结合源码深入理解final关键字,修饰数据,方法,类

数据结构和算法专题

数据结构与算法分析---Java语言描述 读书笔记

数据结构与算法(Data Structures and Algorithm)------跟着Mark Allen Weiss用Java语言学习数据结构与算法

ArrayList 源码分析+手动实现

Java进阶(3)------手动实现ArrayList & 源码的初步理解分析 & 数组插入数据和删除数据的问题

LinkedList 源码分析+手动实现

Java进阶(7)------手动实现LinkedList & 内部node类的实现 & 增删改查的实现 & toString方法 & 源码的初步理解

Java的集合框架:List,Set,Map,ConcurrentHashMap

深入认识JVM

JVM内存分配,类加载

Java进阶(1)------JVM的内存分配 & 反射Class类的类对象 & 创建对象的几种方式 & 类加载(何时进入内存JVM)& 注解 & 反射+注解的案例

创建对象的4种方法总结

Java进阶(4)------结合类加载JVM的过程理解创建对象的几种方式:new,反射Class,克隆clone(拷贝),序列化反序列化

垃圾回收GC

Java进阶(垃圾回收GC)------理论篇:JVM内存模型 & 垃圾回收定位清除算法 & JVM中的垃圾回收器

简介:本篇博客介绍JVM的内存模型,对比了1.7和1.8的内存模型的变化;介绍了垃圾回收的语言发展;阐述了定位垃圾的方法,引用计数法和可达性分析发以及垃圾清除算法;然后介绍了Java中的垃圾回收器,由串行、到并行再到并发,最后到G1的演变;最后给出了垃圾回收器的对比和使用指引。

JVM调优,Arthas使用

认识多线程

创建多线程方法+了解线程池

Java进阶(5)------创建多线程的方法extends Thread和implements Runnable的对比 & 线程池及常用的线程池

多线程下-1非原子性问题即解决

Java进阶(6)------抢购问题中的数据不安全(非原子性问题)& Java中的synchronize和ReentrantLock锁使用 & 死锁及其产生的条件

再论线程,创建、生命周期

Java进阶(再论线程)------线程的4种创建方式 & 线程的生命周期 & 线程的3大特性 & 集合中的线程安全问题

主要内容:

1.线程创建的方式,继承Thread类,实现Runable接口,实现Callable接口,采用线程池;

2.线程生命周期: join():运行结束再下一个, yield():暂时让出cpu的使用权,deamon():守护线程,最后结束,sleep():如果有锁,不会让出;

3.线程3大特性,原子性,可见性,有序性;

4.list集合中线程安全问题,hash算法问题;


总结

1.本篇博客是一篇不定期持续更新的博客;

2.是一些Java深入学习的笔记汇总;

相关推荐
咩咩啃树皮8 小时前
第40篇:Vue3组件化开发精讲——组件拆分、复用、父子通信、工程化架构
java·前端·架构
鱟鲥鳚9 小时前
Spring Boot 集成 LangChain4j:从模型调用到 Tool Calling(Demo版)
java·spring boot
世人万千丶10 小时前
参数管理_Flutter在鸿蒙平台路由参数最佳实践
学习·flutter·华为·harmonyos·鸿蒙
大模型码小白10 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
腾渊信息科技公司11 小时前
Spring Boot对接MES实战:视觉检测数据自动同步方案
java·人工智能·spring boot·后端·计算机视觉·ai·软件需求
爱笑的源码基地12 小时前
高并发 Redis 缓存门诊HIS系统源码,含财务统计药房进销存
java·程序·门诊系统·诊所系统·云诊所源码
wuqingshun31415912 小时前
TCP超时重传机制是为了解决什么问题?
java
遇乐的果园13 小时前
前端学习笔记-vue加载渲染优化
前端·笔记·学习
遇乐的果园14 小时前
前端学习笔记-vue状态管理优化
前端·笔记·学习
莫逸风14 小时前
【AgentScope 2.0】 0. 学习指南
java·llm·agent·agentscope