摘要: ## 起步依赖 Spring Boot 默认导入父工程依赖`spring-boot-starter-parent`,它里面已经申明好了众多的可能会用到的依赖。比如常用的`spring-boot-starter-web`,我们需要用什么,就在自己的`pom.xml`文件中定义就好了。 ```xml o 阅读全文
posted @ 2023-07-12 18:33 xfcoding 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 放眼望去,`java.util.concurrent`包下类大致包括:atomic 原子类、锁、并发集合、线程池、工具类。我们挑重要的了解一下。 ## Atomic 原子类 Java针对并发编程已经有了各种锁,为什么还需要原子类?原子类一定有些特别的应用场景? 在很多时候,我们需要的仅仅是一个简单的 阅读全文
posted @ 2023-07-11 18:12 xfcoding 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 本文记录一些概念的定义或解释,都是网上 copy 来的,作回顾之用。 阅读全文
posted @ 2023-07-01 10:44 xfcoding 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 想搞清楚这个问题,需要先看线程池原理:👉[线程池原理](https://www.cnblogs.com/cloudrich/p/17477329.html) 原因是,`Worker`线程启动后,会不断轮询,从阻塞队列中取任务,因为取不到任务,一直阻塞,`Worker`线程一直在运行。看代码: `` 阅读全文
posted @ 2023-06-30 15:01 xfcoding 阅读(248) 评论(0) 推荐(0) 编辑
摘要: ## 是什么 * 浅拷贝:通常来讲,一个对象使用`Object.clone()`方法属于浅拷贝,浅拷贝只拷贝基本类型和`String`类型的成员变量。它的特点是,一个对象如果有引用类型的成员变量(`String`除外),浅拷贝只是拷贝这个成员变量的引用到新的对象,即两个对象中的这两个成员变量,共用一 阅读全文
posted @ 2023-06-29 14:34 xfcoding 阅读(79) 评论(0) 推荐(0) 编辑
摘要: ## 面向对象三大特征 1. 封装 - 对外隐藏复杂的实现,暴露出简单的使用方法 - 可以隔离变化,内部的变化外部不知道 - 提高代码重用性 - 保护数据 2. 继承 * 提高代码重用性(如果仅仅是为了重用,则优先考虑组合) * 多态的前提 3. 多态 * 前提:继承 * 作用:提高代码的扩展性 * 阅读全文
posted @ 2023-06-28 18:17 xfcoding 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 下面我将围绕这几个问题,来讨论一下线程池。 1. 线程池是什么? 2. 为什么使用线程池,或者说使用线程池的好处是什么? 3. 线程池怎么使用? 4. 线程池的原理是什么,它怎么做到重复利用线程的? ## 1. 是什么 线程池(Thread Pool)是一种基于池化思想的管理线程的工具,它内部维护了 阅读全文
posted @ 2023-06-13 13:59 xfcoding 阅读(85) 评论(0) 推荐(0) 编辑
摘要: ## 1. Servlet >Servlet(Server Applet) > >Servlet是SUN公司提供的一门用于开发动态WEB资源的技术。Servlet是一个接口,用户若想开发一个根浏览器交互的程序,那么服务端的Java类需要实现Servlet接口。通常情况下,我们说的Servlet是实现 阅读全文
posted @ 2023-06-13 09:40 xfcoding 阅读(17) 评论(0) 推荐(0) 编辑
摘要: Spring 的两大特性就是 IoC 和 AOP。 ## 1. 什么是 IoC IoC叫控制反转。在谈IoC之前,要了解什么是容器,因为Spring又叫IoC容器。容器是一个软件环境,它为某种特定组件的运行提供环境支持。例如,Tomcat就是一个Servlet容器,它可以为Servlet的运行提供运 阅读全文
posted @ 2023-06-13 09:06 xfcoding 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 一提到策略模式,有人就觉得,它的作用是避免 if-else 分支判断逻辑。实际上,这种认识是很片面的。策略模式主要的作用还是解耦策略的定义、创建和使用,控制代码的复杂度,让每个部分都不至于过于复杂、代码量过多。除此之外,对于复杂代码来说,策略模式还能让其满足开闭原则,添加新策略的时候,最小化、集中化 阅读全文
posted @ 2023-06-09 09:13 xfcoding 阅读(32) 评论(0) 推荐(0) 编辑