当前位置: 首页 > news >正文

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

在这里插入图片描述

前言

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

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

目录
  • 前言
  • 面向对象专题
    • 再论面向对象
      • 封装 和 关键字private,this
      • 详解构造方法Constructor
      • final关键字
  • 数据结构和算法专题
    • 数据结构与算法分析—Java语言描述 读书笔记
      • ArrayList 源码分析+手动实现
      • LinkedList 源码分析+手动实现
      • Java的集合框架:List,Set,Map,ConcurrentHashMap
  • 深入认识JVM
    • JVM内存分配,类加载
      • 创建对象的4种方法总结
      • 垃圾回收GC
      • JVM调优,Arthas使用
  • 认识多线程
    • 创建多线程方法+了解线程池
      • 多线程下-1非原子性问题即解决
      • 再论线程,创建、生命周期
  • 总结

面向对象专题

再论面向对象

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
  • Java进阶(List)——面试时List常见问题解读 & 结合源码分析
  • Java进阶(Set)——面试时Set常见问题解读 & 结合源码分析
  • Java进阶(HashMap)——面试时HashMap常见问题解读 & 结合源码分析
  • Java进阶(ConcurrentHashMap)——面试时ConcurrentHashMap常见问题解读 & 结合源码分析 & 多线程CAS比较并交换 初识

在这里插入图片描述

深入认识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进阶(JVM调优)——阿里云的Arthas的使用 & 安装和使用 & 死锁查找案例,重新加载案例,慢调用分析
  • Java进阶(JVM调优)——JVM调优参数 & JDK自带工具使用 & 内存溢出和死锁问题案例 & GC垃圾回收

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

认识多线程

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

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

http://www.lryc.cn/news/533961.html

相关文章:

  • GPU、CUDA 和 cuDNN 学习研究【笔记】
  • 【5】阿里面试题整理
  • 计算机毕业设计hadoop+spark+hive物流预测系统 物流大数据分析平台 物流信息爬虫 物流大数据 机器学习 深度学习
  • Wpf美化按钮,输入框,下拉框,dataGrid
  • 搜索插入位置:二分查找的巧妙应用
  • Cocos2d-x 游戏开发-打包apk被默认自带了很多不必要的权限导致apk被报毒,如何在Cocos 2d-x中强制去掉不必要的权限-优雅草卓伊凡
  • 自动化xpath定位元素(附几款浏览器xpath插件)
  • String类(6)
  • 动态表格html
  • ZU47DR 100G光纤 高性能板卡
  • mysql8.0使用pxc实现高可用
  • Kotlin 使用 Chrome 无头浏览器
  • Arbess基础教程-创建流水线
  • vscode安装ESP-IDF
  • 第31周:文献阅读
  • GenAI + 电商:从单张图片生成可动态模拟的3D服装
  • 进程(1)
  • ChatGPT搜索免费开放:AI搜索引擎挑战谷歌霸主地位全面分析
  • hadoop之MapReduce:片和块
  • GitPuk快速安装配置教程(入门级)
  • 在CT107D单片机综合训练平台上,8个数码管分别单独依次显示0~9的值,然后所有数码管一起同时显示0~F的值,如此往复。
  • 深入浅出Java数组:从基础到高阶应用
  • 基于 Nginx 的 CDN 基础实现
  • 讲人话的理解ai学习原理
  • Spring boot整合quartz方法
  • 网站改HTTPS方法
  • 数据中台是什么?:架构演进、业务整合、方向演进
  • Java Stream API:高效数据处理的利器引言
  • qml之Text 组件显示当前时间
  • 两栏布局、三栏布局、水平垂直居中