JAVA
文章平均质量分 80
本栏目主要写相关java知识,也涉及到Jvm 方面知识。
宁在春
阿里云/InfoQ签约作者,掘金/csdn优质创作者,Java 领域的新生创作者,主要深耕于 Java 领域相关的技术。
喜爱创作,希望自己的文章能够帮助到一些伙伴,也希望能够通过创作结交到一些志同道合的伙伴。
长路修远,吾与子之共适。(长路漫漫,我们一起享受~)
一个喜欢文艺却走上编程的男孩。
望别日,与君相见时,君已有所成。
展开
-
Java反射真正的详解,学以致用,实战案例,近万字长文,不读后悔
你觉得Java反射在你心里是个什么地位呢?看了本文,绝对不会让你觉得失望!!!本文详细解释Java反射,附带实战案例(AOP修改参数、Mybatis拦截器实现自动填充),希望能够学以致用,做到举一反三原创 2022-10-07 22:54:30 · 867 阅读 · 0 评论 -
「后端小伙伴来学前端了」分析Vue脚手架结构
傍晚的月亮前言每日匆匆忙忙的写老师布置的 Vue 项目,对于 Vue 始终没有一个系统的认知,每天都是遇到什么问题就去查什么样的问题。看起来好像也没啥问题,但是所有的知识都是混入的,导致没有一个像样的体系。也就导致有了以下问题的存在:难以一起讨论。和他们聊天,讲的很多东西我都插不上嘴(学习的路上一定要明白,交流才是让人进步的最快方式,也是发现自己的缺陷和长处的最快方式)解决问题的方式的不同。同样的问题,他们解决问题的代码远远比我写的优雅。看待问题的角度、深度不一样。我想的更多的是如何立马解决.原创 2021-11-11 16:46:48 · 499 阅读 · 0 评论 -
Idea如何方便的查看Java字节码文件,你是怎么做的
·校园的傍晚·前言作为一名Java开发人员,我想Java字节码文件是无论如何都会接触到的,也是要读懂的。面试或者是自己开始研究Java的一些底层原理,大都会遇上要字节码文件的时候。接下里咱们一起来聊聊如何idea有那几种方式查看字节码文件。idea查看字节码文件1.1、javap命令的使用在jdk工具包的bin目录下,有一个java可执行文件javap,该工具可以查看java编译后的class文件。使用命令如下命令进行查看:这个每个Jdk中都会有的。(配置了环境变量就可以直接在idea中使.原创 2021-11-10 20:45:47 · 2203 阅读 · 2 评论 -
UML图 | 让你快速学会使用 Visio 绘制时序图(顺序、序列),再也不用担心文档画图问题啦!!
上一次写过一篇 UML | 类图 相关的文章,平时规范开发会用的上,或者是写什么文档,就还是需要画图,就像毕业设计就是如此。希望能够帮助到大家。注:本文中所用画图软件为 Microsoft Visio .一、概述时序图只是一种叫法,平常我们所说的顺序图、序列图也没有错。时序图是基于交互的对象行为建模,是 UML 用于描述对象之间信息的交互过程的方法,是描述对象间协作关系的模型。时序图用于捕获系统运行中对象之间有时间顺序的交互,是由生命线和消息组成。时序图将交互关系表示为一个二维图。纵向是时.原创 2021-10-20 09:20:03 · 40095 阅读 · 5 评论 -
为什么阿里巴巴开发手册中强制要求 POJO 类使用包装类型?NPE问题防范
为什么阿里巴巴开发手册中强制要求 POJO 类使用包装类型?背景:写这个的原因,也是我这两天凑巧看到的,虽然我一直有 alibaba Java 开发手册,也看过不少次,但是一直没有注意过这个问题????属于那种看过,但又没完全看过????一起来看看吧冲咯????hxdm,我写不出小故事????,但是可不可以看在我写了不少,还算实用的份上,给个赞????啊。在这里请xdm 喝 ????啦一、前言????今天在写一个AdvertVO类时,我当时用 id 是直接给了个 long,没有使用用包装原创 2021-10-15 17:03:18 · 240 阅读 · 0 评论 -
通过简单例子 | 快速理清 UML类图中六大关系
类与类之间的六大关系泛化 ( Generalization ) —> 表继承关系实现 ( Realization )关联 ( Association )聚合 ( Aggregation )组合 ( Compostion )依赖 ( Dependency )前言:最近学校在上统一建模语言 UML ,也是毕业设计中需要用到。我感觉学会 UML 图对编程的作用是很大的,将需要做的东西抽象出来,作图,然后再进行编码,我觉得思路会比较清晰。所以打算把这个方面也好好掌握掌握。希望这篇文.原创 2021-10-10 09:45:46 · 382 阅读 · 1 评论 -
快速 Get 面试题中:线程池七个参数和工作原理问题,理解万岁
这次用一个生活案例来让你快速的 get 到线程池的工作原理和七个参数的作用。最近在复习面试题,巩固一下自己。学完看看面试题,可以很有效的知道的不足。也是为以后做准备。你好,我是博主宁在春,希望文章能够让你有所收获,也让我们也一起努力!!!本文主要针对线程池的七个参数及工作原理做讲解。阅读完本文能够通过自己的语言简单阐述线程池的工作原理和画出原理图。一、面试题在看很多Java面试题相关的文章或者博客中,对于线程池都会有这么几个常见连环问题。????????面试官:平时工作中使用到线程了吗原创 2021-12-02 08:29:44 · 580 阅读 · 0 评论 -
Java设计模式-建造者模式 理论代码相结合
继工厂模式后的建造者模式,也是java中常常能够见到的模式一种,应用场景也比较广,比较好用。大家想了解的话,一起来看一看啦。????很喜欢一句话:“八小时内谋生活,八小时外谋生存”你好,如果喜欢,请一起坚持!!望别日与君相见时,君已有所成。共勉先看看图舒缓心情。???? (我才不会告诉你我是一名喜欢蓝天白云大海的小小博主???? )Java设计模式-建造者模式 理论代码相结合一、建造者模式1)概念:2)使用场景:3)角色:4)解释:二、代码实例2.1、题目2.2、类图2.3、代码2.4、测原创 2021-10-10 09:46:34 · 305 阅读 · 0 评论 -
JVM 垃圾回收算法 -可达性分析算法!!!高频面试!!!
前言:学习JVM,那么不可避免的要去了解JVM相关的垃圾回收算法,本文只是讲了讲了可达性分析算法,至于标记-清除、标记-复制,标记-整理,分代收集等等算法,会在近两天的文章中陆续更新出来。很喜欢一句话:“八小时内谋生活,八小时外谋发展。”共勉地点:湖南省永州市蓝山县舜河村作者:用心笑*JVM 垃圾回收算法 -可达性分析算法一、先谈谈不被Java所用的引用计数法二、可达性分析算法2.1概念:2.2、思路:2.3、GC Roots可以是哪些?1、详细解释:2、总结3、关键小技巧4、注意三、 对象.原创 2021-08-07 11:31:07 · 906 阅读 · 0 评论 -
这次让我们从字节码文件来重新认识String,文末有两个小小面试题,一起来试一试
我想对于String这个类,没有谁对它陌生吧。可以说是无论在哪个项目中都是可以用到的。那么反问一下你,你确定你对于String已经是真的了解了吗?你是否清楚String的内存分配?你是否清楚字节码文件中,它是如何的?你是否清楚创建String对象时,它牵扯到那几个知识点勒?一起来讨论吧。”八小时内谋生活,八小时外谋发展“共勉地点:湖南永州市蓝山县舜河村作者:用心笑*重新认识String一、String基本特性1.1、基础知识1.2、大家想一想为什么会作出这样的改变勒?1.3、String不.原创 2021-08-05 17:18:38 · 185 阅读 · 0 评论 -
JVM中垃圾回收相关算法 - 值得了解一下的,因为早晚得了解
概要:当成功区分出内存中存活对象和死亡对象后,GC接下来的任务就是执行垃圾回收,释放掉无用对象所占用的内存空间,以便有足够的可用内存空间为新对象分配内存。目前在JVM中比较常见的三种垃圾收集算法是:标记一清除算法(Mark-Sweep)复制算法(copying)标记-压缩算法(Mark-Compact)地点:湖南省永州市蓝山县舜河村作者:用心笑*????JVM 垃圾回收相关算法一、标记-清除算法标记:清除:二、标记-复制算法2.1、概述:2.2、图示2.3、优缺点优点缺点2.4、注意三、标记-整理原创 2021-08-08 15:14:55 · 92 阅读 · 0 评论 -
一篇文章带你快速理解JVM运行时数据区 、程序计数器详解 (手画详图)值得收藏!!!
受多种情况的影响,又开始看JVM 方面的知识。1、Java 实在过于内卷,没法不往深了学。2、面试题问的多,被迫学习。3、纯粹的好奇。很喜欢一句话:“八小时内谋生活,八小时外谋发展。”— 望别日与君相见时,君已有所成。共勉地点:湖南一个小城市邵阳作者:博主一篇文章带你快速理解JVM运行时数据区 、程序计数器详解详解 (手画详图)值得收藏!!!一、运行时数据区图示:运行时数据区的完整图:运行时数据区概述:二、程序计数器(Program Counter)概述:代码讲解使用PC寄存器存储字.原创 2021-07-24 01:21:28 · 490 阅读 · 1 评论 -
JVM-虚拟机栈详解 附面试高频题 (手画多图)!!!深入浅出,绝对值得收藏哈!!!
JVM-虚拟机栈详解 附面试高频题 (手画多图)受多种情况的影响,又开始看JVM 方面的知识。1、Java 实在过于内卷,没法不往深了学。2、面试题问的多,被迫学习。3、纯粹的好奇。很喜欢一句话:“八小时内谋生活,八小时外谋发展。”— 望别日与君相见时,君已有所成。共勉来源:b站说唱新时代中 剁椒沙丁鱼队《世界以痛吻我》中歌手:于贞作者:博主制作原因:人美声甜可爱可辣可酷 ????♂️????♂️????♂️一、虚拟机栈概述先给大家来看一下 运行时数据区的图示如果大家原创 2021-07-21 18:10:24 · 626 阅读 · 5 评论 -
Java类的加载过程详解 面试高频!!!值得收藏!!!
受多种情况的影响,又开始看JVM 方面的知识。1、Java 实在过于内卷,没法不往深了学。2、面试题问的多,被迫学习。3、纯粹的好奇。很喜欢一句话: 八小时内谋生活,八小时外谋发展。望别日与君相见时,君已有所成。来自庞大的朋友圈 --地点:??? 不知道哈。作者:阿瞒类的加载过程详解一、概述二、过程(1) :Loading(加载)阶段2.1、加载的理解2.2、加载完成的操作2.3、二进制流的获取方式2.4、类模型与 Class 实例的位置说明三、过程(2) :Linking(链.转载 2021-07-16 15:03:38 · 647 阅读 · 0 评论 -
双亲委派机制 详解(手画详图)面试高频 你值得拥有!!!
双亲委派机制 详解(手画详图)面试高频 ????你值得拥有!!!受多种情况的影响,又开始看JVM 方面的知识。1、Java 实在过于内卷,没法不往深了学。2、面试题问的多,被迫学习。3、纯粹的好奇。很喜欢一句话: 八小时内谋生活,八小时外谋发展。望别日与君相见时,君已有所成。地点:湖南--小城市邵阳作者:博主 ????♂️一、概述 双亲委派机制是当类加载器需要加载某一个.class字节码文件时,则首先会把这个任务委托给他的上级类加载器,递归这个操作,如果上原创 2021-07-19 00:11:25 · 1385 阅读 · 6 评论 -
JVM-类加载器 详解(手画多图)面试常问 绝对值得阅读!!!
受多种情况的影响,又开始看JVM 方面的知识。1、Java 实在过于内卷,没法不往深了学。2、面试题问的多,被迫学习。3、纯粹的好奇。很喜欢一句话: 八小时内谋生活,八小时外谋发展。望别日与君相见时,君已有所成。作者:杂乱无章--树熊来源:微信公众号 杂乱无章。JVM-类加载器 详解一、概述二、类加载器的分类2.1、Bootstrap ClassLoader(根类加载器)2.2、Extension ClassLoader(扩展类加载器)2.3、AppClassLoader (应用程.原创 2021-07-17 15:18:06 · 634 阅读 · 14 评论 -
Java 8 LocalDateTime 计算天数差
Java 8 LocalDateTime 计算天数差背景:我最近写一个东西,前端突然提了一个需求,说需要统计最近七天的销售额,然后甩给我一张图,让我去实现接口。我最开始的思路,就是通过时间差去查,虽然最后并不是用这个方式,但是在这里也记录一下这个知识,之前没懂。也分享給大家。import java.time.LocalDateTime;import java.time.format.DateTimeFormatter;class ShoppingkillApplicationTests原创 2021-07-01 20:08:15 · 1842 阅读 · 0 评论 -
Java 文件复制 Hutool IO使用
Java 文件复制 Hutool IO使用文件读写操作我要将这张照片复制一份。原生Java代码方式package com.hutool;import java.io.*;/** * @Author: crush * @Date: 2021-05-20 19:21 * version 1.0 */public class HuToolIoDemo { public static void main(String[] args) throws IOException {原创 2021-05-20 20:01:45 · 3068 阅读 · 2 评论 -
Java 多线程模拟卖票
完成操作系统作业Java模拟多线程卖票/** * @Author: crush * @Date: 2021-05-12 16:24 * version 1.0 */public class SellTicketTask implements Runnable { /** * 一百张票 */ private int ticketCount = 100; @Override public void run() { while (tr原创 2021-05-12 22:26:04 · 155 阅读 · 0 评论 -
JDK11下载安装、JRE生成、环境配置
下载JDK11官网下载:Java SE - Downloads | Oracle Technology Network | Oracle选择自己合适的版本。安装生成JRE1、安装目录找到jdk的安装目录2、jdk11安装目录里面我们可以看到是没有jre的,但是我们在之后可能是会需要用到Jre的。所以需要使用命令来生成jre目录。在Jdk的目录下打开cmd模式执行命令:bin\jlink.exe --module-path jmods --add-modules jav原创 2021-05-04 22:35:37 · 41499 阅读 · 21 评论 -
Java 连接数据库 JDBCUtil
Java 连接数据库 JDBCUtil差点就把这个给遗忘掉了。????Java连接数据库是JavaWeb 的入门操作。当然其方式也是非常简单的。在这里不多做说明,代码里面做了详细介绍。对于初学者或许会稍微不那么友善。我的IDE 是idea,习惯搭成maven项目 直接导包的。如果是Elcipse 的话,不会创建的话,再查查吧,我的代码是没有问题的。呜呜呜。package jdbc;import java.sql.*;import java.util.ArrayList;import原创 2021-04-27 17:44:13 · 1170 阅读 · 2 评论 -
Optional 详解 Java
Optional的使用详解1、Optional介绍Optional 类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。Optional 类的引入很好的解决空指针异常。2、构建Optional构建一个Optional对象;方法有:empty( )、of( )、ofNullable( )原创 2021-04-13 11:15:13 · 12349 阅读 · 0 评论 -
junit 测试遇上java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing 错误
解决方案将junit 的版本降到 4.10导入hamcrest-core-1.3.jar这两个方案都可以解决这个问题原创 2020-11-02 11:12:09 · 152 阅读 · 0 评论 -
JAVA--网络编程
网络编程— JAVA通过URL下载网上资源下载端口TCP实现聊天U D P 多线程在线咨询端口端口表示计算机上一个程序的进程不同的进程有不同的端口号 用来区分软件被规定 0~65535端口分类(1)公认端口(Well Known Ports)(2)注册端口(Registered Ports)(3)动态和/或私有端口(Dyanmic and /or Private Ports)查看所有的端口netstat -ano #查看所有的端口ne原创 2020-06-02 16:24:21 · 262 阅读 · 0 评论