- 构建Maven项目的时候,如果没有进行特殊的配置,Maven会按照标准的目录结构查找和处理各种类型文件。 src/main/java和src/test/java 这两个目录中的所有*.java文件会分别在comile和test-comiple阶段被编译,编译结果分别放到了target/classes和ta... 构建Maven项目的时候,如果没有进行特殊的配置,Maven会按照标准的目录结构查找和处理各种类型文件。 src/main/java和src/test/java 这两个目录中的所有*.java文件会分别在comile和test-comiple阶段被编译,编译结果分别放到了target/classes和ta...
- 五.Spring5 新注解 新的注解有用,为后面的SpringBoot可以打一个基础,因为到SpringBoot的课程, 多了很多注解。这时候,先了解一部分。 5.1 @Configuration... 五.Spring5 新注解 新的注解有用,为后面的SpringBoot可以打一个基础,因为到SpringBoot的课程, 多了很多注解。这时候,先了解一部分。 5.1 @Configuration...
- 官方介绍 在分析安装过程之前,需要先了解一下 Android 项目是如何经过编译->打包生成最终的 .apk 格式的安装包。谷歌有一张官方图片来描述 apk 的打包流程,如下图所示。 Android 应用模块的构建过程(如上图所... 官方介绍 在分析安装过程之前,需要先了解一下 Android 项目是如何经过编译->打包生成最终的 .apk 格式的安装包。谷歌有一张官方图片来描述 apk 的打包流程,如下图所示。 Android 应用模块的构建过程(如上图所...
- 1、什么是热部署 相信大家在写代码的时候都有这个困扰,就是每次我改完代码之后都需要重启项目才能看到结果,小项目还好,启动不会占用太多时间,如果是一个大项目,每次重启都要耗费很多时间的情况下,这无疑对开发效率都会大幅下降,那么有没有这样一种技术? 我修改后无需重启服务器,就可以马上看到效果?我可... 1、什么是热部署 相信大家在写代码的时候都有这个困扰,就是每次我改完代码之后都需要重启项目才能看到结果,小项目还好,启动不会占用太多时间,如果是一个大项目,每次重启都要耗费很多时间的情况下,这无疑对开发效率都会大幅下降,那么有没有这样一种技术? 我修改后无需重启服务器,就可以马上看到效果?我可...
- ReentrantLock ReentrantLock的出现是为了替代synchronized,因为使用lock锁之后代码会更加简洁,增加易读性,但是在jdk1.6之后,synchronized增加了一个锁升级的概念,所以从jdk1.6开始,都优先使用synchronized,这不代表着Reent... ReentrantLock ReentrantLock的出现是为了替代synchronized,因为使用lock锁之后代码会更加简洁,增加易读性,但是在jdk1.6之后,synchronized增加了一个锁升级的概念,所以从jdk1.6开始,都优先使用synchronized,这不代表着Reent...
- 关注文末公众号,有惊喜福利! Java代码有很多种不同的运行方式。比如说可以在开发工具中运行,可以双击执行jar文件运行,也可以在命令行中运行,甚至可以在网页。 这些执行方式都离不开JRE,J... 关注文末公众号,有惊喜福利! Java代码有很多种不同的运行方式。比如说可以在开发工具中运行,可以双击执行jar文件运行,也可以在命令行中运行,甚至可以在网页。 这些执行方式都离不开JRE,J...
- 乐观锁和悲观锁独占锁和共享锁互斥锁和读写锁公平锁和非公平锁可重入锁自旋锁分段锁锁升级(无锁|偏向锁|轻量级锁|重量级锁)锁优化技术(锁粗化、锁消除) 1、悲观锁 悲观锁对应于生活中悲观的人,悲观的人总是想着事情往坏的方向发展。  ... 乐观锁和悲观锁独占锁和共享锁互斥锁和读写锁公平锁和非公平锁可重入锁自旋锁分段锁锁升级(无锁|偏向锁|轻量级锁|重量级锁)锁优化技术(锁粗化、锁消除) 1、悲观锁 悲观锁对应于生活中悲观的人,悲观的人总是想着事情往坏的方向发展。  ...
- 创建对象的内存是分配在堆上还是栈上面?大部分童鞋的回答是这样的:“肯定分配在堆内存的嘛,栈内存是属于子线程和基本数据类型专用的内存空间,怎么会分配到栈上面呢?”,这个回答嘛,也对,也不对,说他对,没错,确实是堆上分配的,说他不对,是因为得看具体情况,那么接下来就为大家介绍下,什么是栈上分配,什么... 创建对象的内存是分配在堆上还是栈上面?大部分童鞋的回答是这样的:“肯定分配在堆内存的嘛,栈内存是属于子线程和基本数据类型专用的内存空间,怎么会分配到栈上面呢?”,这个回答嘛,也对,也不对,说他对,没错,确实是堆上分配的,说他不对,是因为得看具体情况,那么接下来就为大家介绍下,什么是栈上分配,什么...
- 目录 前言 一、Java异常的基础知识 二、Java异常类层次 三、Java异常处理机制 四、如何定义和使用异常类 五、运行时异常和受检查异常 六、异常转型和异常链 七、Java异常处理的原则和技巧 v搜索公众号:zhulin1... 目录 前言 一、Java异常的基础知识 二、Java异常类层次 三、Java异常处理机制 四、如何定义和使用异常类 五、运行时异常和受检查异常 六、异常转型和异常链 七、Java异常处理的原则和技巧 v搜索公众号:zhulin1...
- 在了解之前,我们先看看一个面试过程 在面试的时候面试官经常会出现一道题:“Object o = new Object() 占用了多少内存?”A童鞋回答:“这个我知道,16个字节”,这时候面试官再问了:“为什么是16个字节呢?”A童鞋:“啊~~ 唉。。。。不知道唉, 我只是来面试增删改查的,要知道这么多吗?” 那... 在了解之前,我们先看看一个面试过程 在面试的时候面试官经常会出现一道题:“Object o = new Object() 占用了多少内存?”A童鞋回答:“这个我知道,16个字节”,这时候面试官再问了:“为什么是16个字节呢?”A童鞋:“啊~~ 唉。。。。不知道唉, 我只是来面试增删改查的,要知道这么多吗?” 那...
- 什么是java内存模型?这里主要简述为什么会发生线程安全问题 java内存模型简称JMM,定义了一个线程对另一个线程可见,每个线程有自己的本地内存(变量),因为每个子线程都有自己独立的内存空间,当多个线程同时访问一个数据(共享变量)的时候,实际上是把主内存的变量复制一份到子线程的本地内存进行操作,操作完成后... 什么是java内存模型?这里主要简述为什么会发生线程安全问题 java内存模型简称JMM,定义了一个线程对另一个线程可见,每个线程有自己的本地内存(变量),因为每个子线程都有自己独立的内存空间,当多个线程同时访问一个数据(共享变量)的时候,实际上是把主内存的变量复制一份到子线程的本地内存进行操作,操作完成后...
- 前言 本文章只讨论ByteBuffer和ByteBuf的底层结构的区别,如果想要了解堆内内存和堆外内存的区别,请看我的另一篇文章:java堆外内存详解(又名直接内存)和ByteBuffer 什么是Bu... 前言 本文章只讨论ByteBuffer和ByteBuf的底层结构的区别,如果想要了解堆内内存和堆外内存的区别,请看我的另一篇文章:java堆外内存详解(又名直接内存)和ByteBuffer 什么是Bu...
- 什么是守护线程? 守护线程的作用是为其他线程的运行提供便利服务,守护线程最典型的应用就是 GC (垃圾回收器),它就是一个很称职的守护者; 通俗地来讲,只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着JVM一同结束工作; 比如说有2个线程,一个非守护线程A,另一... 什么是守护线程? 守护线程的作用是为其他线程的运行提供便利服务,守护线程最典型的应用就是 GC (垃圾回收器),它就是一个很称职的守护者; 通俗地来讲,只要当前JVM实例中尚存在任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束时,守护线程随着JVM一同结束工作; 比如说有2个线程,一个非守护线程A,另一...
- 我们先看看类的加载过程,在我们运行java代码时,首先会通过编译器将.java的文件编程成.class文件,之后在通过类加载器将.class文件转为字节码加载到jvm运行时数据区里面,整个加载过程如下 上图只是类的加载过程,还没有创建对象; 那如果创建对象的话,比如执行 new Object(); ... 我们先看看类的加载过程,在我们运行java代码时,首先会通过编译器将.java的文件编程成.class文件,之后在通过类加载器将.class文件转为字节码加载到jvm运行时数据区里面,整个加载过程如下 上图只是类的加载过程,还没有创建对象; 那如果创建对象的话,比如执行 new Object(); ...
- 【Java 数据结构 & 算法】️⚠️宁可累死自己, 也要卷死别人 14️⚠️ 汉诺塔 概述汉诺塔递归汉诺塔实现 概述 从今天开始, 小白我将带大家开启 Java 数据结构 &am... 【Java 数据结构 & 算法】️⚠️宁可累死自己, 也要卷死别人 14️⚠️ 汉诺塔 概述汉诺塔递归汉诺塔实现 概述 从今天开始, 小白我将带大家开启 Java 数据结构 &am...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中 -
一个AI团队帮你写代码:华为云码道Agent Space实战2026/06/25 周四 19:00-21:00
张翰文-华为云码道工程师/郭英旭-青软创新科技集团股份有限公司 软件架构师
本场直播聚焦华为云码道Agent Space两大模式:研发办公、代码开发,亲身体验从需求到代码的AI自动化能力。实操演示基于华为 CodeArts CLI,依托 OpenSpec 规格体系从零搭建业务项目。
回顾中
热门标签