
Java进阶到高级专栏
文章平均质量分 95
Java进阶到高级博客文章分享
Arya's Blog
2023博客之星后端领域Top9、4-5年赛道Top4、年度总榜 Top56。家里有一只喵咪的铲屎官,她的名字叫Arya;热爱登山徒步的原始人,会爬树的程序猿。
展开
-
Java进阶(锁)——锁的升级,synchronized与lock锁区别
Java进阶(锁)——锁的升级,synchronized与lock锁区别。原创 2024-02-29 17:16:55 · 1636 阅读 · 1 评论 -
Java进阶(锁)——锁分类总结,Java中常用的锁的介绍
Java进阶(锁)——锁分类总结,Java中常用的锁的介绍原创 2024-02-29 16:48:38 · 4706 阅读 · 0 评论 -
Java进阶(JVM调优)——阿里云的Arthas的使用 & 安装和使用 & 死锁查找案例,重新加载案例,慢调用分析
本篇博客介绍JVM调优的工具阿里云的Arthas的使用,安装和使用,命令的使用案例;死锁查询的案例;重新加载一个类信息的案例;调用慢的分析案例。原创 2023-11-10 11:11:02 · 1467 阅读 · 0 评论 -
Java进阶(JVM调优)——JVM调优参数 & JDK自带工具使用 & 内存溢出和死锁问题案例 & GC垃圾回收
本篇博客介绍JVM调优的相关知识,给出了一个demo案例,介绍了JVM调优的主要参数;介绍了jdk自带的jvm分析工具的使用;给出了一个内存溢出的调优场景,逐步分析定位问题,以及发生死锁的分析案例。原创 2023-11-09 20:30:29 · 5938 阅读 · 3 评论 -
Java进阶(再论线程)——线程的4种创建方式 & 线程的生命周期 & 线程的3大特性 & 集合中的线程安全问题
本篇博客介绍Java中创建线程的4种方式,并进行了简单的对比;介绍了线程的生命周期,几个关键方法的作用;然后阐述了线程的三大特性,最后结合Java集合框架分析了线程安全的问题。原创 2023-11-07 16:31:46 · 525 阅读 · 0 评论 -
Java进阶 之 再论面向对象(3)——构造方法Constructors 以及 调用的分析 & JavaBean的概念 & 构造函数中this关键字
本篇博客围绕对象的初始化方法,构造方法进行阐述,分析构造方法调用和内存以及实现细节,介绍了JavaBean的概念,描述了this关键字在构造函数中的使用。原创 2023-10-13 15:37:47 · 337 阅读 · 0 评论 -
Java进阶 之 再论面向对象(2)——类的定义及对象的使用 & 封装Encapsulation & 关键字private,this
本篇博客介绍类的定义和对象的使用方法,并分析对象的内存图,此外阐述了Java三大特性(Encapsulation 封装,inheritance 继承,polymorphism多态)之一的封装,封装究竟是什么,并引出了两个关键字,this关键字和private关键字。原创 2023-10-13 14:45:54 · 191 阅读 · 0 评论 -
Java进阶 之 再论面向对象(1)——面向对象的编程思想 & Java中的类和对象 & 深入认识对象,内存图解+变量作用域+参数传递
本篇博客从面向过程和面向对象的编程思想谈起,阐述了类和对象在Java中的编程中的应用,此外,对于对象的内存,变量作用域,参数传递等进行了阐述。原创 2023-10-13 10:25:39 · 280 阅读 · 0 评论 -
Java进阶(7)——手动实现LinkedList & 内部node类的实现 & 增删改查的实现 & toString方法 & 源码的初步理解
1.linkedList的节点,当前,上一个,下一个的思想;2.根据index找node的方法,根据index确定从头部还是尾部;3.linkedlist的增删改查的实现,本质是改变节点的信息;4.递归方法实现自定义链表的toString方法;原创 2023-08-23 20:03:50 · 1656 阅读 · 0 评论 -
Java进阶(6)——抢购问题中的数据不安全(非原子性问题)& Java中的synchronize和ReentrantLock锁使用 & 死锁及其产生的条件
1.大量请求拥挤抢购中的数据不安全问题;2.事务ACID:原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability);3.线程安全特征:原子性(Atomicity)可见性(Visibility)有序性(Ordering);4.java中的锁初步,synchronize锁和ReentrantLock锁使用初步;5.滥用锁的问题,以及产生死锁的条件;原创 2023-08-22 18:07:38 · 1060 阅读 · 0 评论 -
Java进阶(5)——创建多线程的方法extends Thread和implements Runnable的对比 & 线程池及常用的线程池
1.创建多线程两种方法,继承thread,实现runnable,常用runnable;2.线程池,管理线程,控制并发;3.常用的线程池,newFixedThreadPool定容量;4.newCachedThreadPool容量大,Integer.MAX_VALUE;5.newScheduledThreadPool(定时任务),newSingleThreadScheduledExecutor单线程的线程池的定时任务;6.newSingleThreadExecutor(单线程),单线程的线程池;原创 2023-08-22 13:13:02 · 1590 阅读 · 0 评论 -
Java进阶(4)——结合类加载JVM的过程理解创建对象的几种方式:new,反射Class,克隆clone(拷贝),序列化反序列化
1.类什么时候被加载到JVM中,new,Class.forName: Class.forName(“包名.类名”);2.创建对象的方式,反射,本质是获得类的类对象Class;3.克隆clone,深拷贝,浅拷贝的对比;4.序列化和反序列化的方式;原创 2023-08-18 10:37:54 · 1118 阅读 · 0 评论 -
Java进阶(3)——手动实现ArrayList & 源码的初步理解分析 & 数组插入数据和删除数据的问题
1.ArrayList的结构分析,可迭代接口,是List的实现;2.数组增加元素和删除元素的分析,何时扩容,如何扩容;3.插入数据的复杂度O(N);4.数组特点:查找和修改容易O(1);增加和删除复杂O(N);原创 2023-08-16 19:40:12 · 1196 阅读 · 0 评论 -
Java进阶(2)——结合源码深入理解final关键字,修饰数据,方法,类
1.在java源码中较多使用final修饰数据,比如ArrayList的初始长度;2.final关键字修饰对象的引用的特点理解;3.了解一下空白final,目前不知道有啥用途;4.final修饰方法,比如java的万类之祖Object的getClass()方法;5.final修饰类,不能被继承inherit,比如String类;原创 2023-08-16 15:11:38 · 240 阅读 · 0 评论 -
Java进阶(1)——JVM的内存分配 & 反射Class类的类对象 & 创建对象的几种方式 & 类加载(何时进入内存JVM)& 注解 & 反射+注解的案例
1.java运行时的内存分配,创建对象时内存分配;2.类加载的顺序,创建一个唯一的类的类对象;3.创建对象的方式,new,Class.forName,clone;4.什么时候加载.class文件进入JVM内存中,看到new,Class.forName;5.如何加载?双亲委托(委派)机制:安全;AppClassLoader;6.反射实质:能够获取属性,获取方法;7.注解的本质:标记;注解+反射才能实现工作;原创 2023-08-08 21:56:15 · 1544 阅读 · 0 评论