03 2022 档案
摘要:总结一下阿里编程规范中的文档 1、代码命名。不能够以下划线或者美元符号开始或结尾 错误示例: _name $name name_ name$ 2、禁止使用中文拼音。但是除了国际通用的中文拼音除外。 正确示例: hangzhou、beijing、renmingbi 错误示例: DaZhePromoti
阅读全文
摘要:maven 1、maven核心 先介绍一下核心:使用maven管理项目。具体分为:依赖管理、项目构建、分模块开发 依赖管理: maven对项目的第三方构件(jar包)进行统一管理。向工程中加入jar包不要手工从其它地方拷贝,通过maven定义jar包的坐标,自动从maven仓库中去下载到工程中。 注
阅读全文
摘要:访问权限修饰符 1、四个访问权限修饰符 java中给定了四个权限修饰符,分别是:public、protected、private以及默认(什么都不写) 2、定义变量 用来修饰类中变量的时候访问权限: 权限修饰符名称 本类 同包 其他包 任意位置 public √ √ √ √ protected √
阅读全文
摘要:public interface Compute { int sum(int i,int j); } public class MyMath { /** * 计算的一个方法 * @param compute 接口对象 * @param i 需要来进行求和的变量 * @param j 需要来进行求和的
阅读全文
摘要:对于封装和空指针的一些感悟 在Java语言中,值分为两种,基本类型和引用类型,基本类型就是直接赋值,引用类型就是需要在堆中来创建对象。 对于基本类型来说,是有默认值的;对于引用类型来说,也是有值的,但是默认值为null 那么问题就出现在这里:如果为null,那么对于一个程序来说,是没有任何意义的,而
阅读全文
摘要:接口在开发中的作用 一、抽象概念 抽象与具体相对,是对事物固定行为的概括化描述(只说明做什么,不说明怎么做)。 那个男人说:一千个读者眼中就会有一千个哈姆雷特。 在编程世界中亦是如此:只告诉你应该做什么(功能),但是没有告诉你怎么去做,怎么做需要你自己去思考(实现)。 强制性要求:抽象世界中,在接口
阅读全文
摘要:switch关键字 1、switch语句的完整格式 switch(值){ case 值1: java语句; ......; java语句; break; case 值2: java语句; ......; java语句; break; case 值3: java语句; ......; java语句;
阅读全文
摘要:join方法代码带来的问题: 显示一段有意思的代码: public class TestWaitOne { public static void main(String[] args) { Thread thread = new Thread(() -> { try { Thread.sleep(1
阅读全文
摘要:# 线程池 [TOC] ## 1、线程 ### 1.1、线程状态 线程是CPU调度资源的最小单位,线程模型分为KLT模型与ULT模型,JVM使用的KLT模型,Java线程与OS线程保持1:1的映射关系,也就是说有一个java线程也会在操作系统里有一个对应的线程。在ThreadLocal类中有一个枚举
阅读全文
摘要:CountDownLatch 1、概述 countdownlatch,对应的中文意思是倒数计时栅栏。对应着java中的线程,就是多个线程会同时来到栅栏,等待栅栏打开。 这个更适用于我们平常测试多线程条件下,模拟搞并发场景,多个请求同时发起请求来进行模拟业务逻辑是否还能够执行成功。 底层基于 Abst
阅读全文
摘要:Semaphore 1、Semaphore概念 Semaphore,俗称信号量,它是操作系统中PV操作的原语在java的实现,它也是基于AbstractQueuedSynchronizer实现的。 Semaphore的功能非常强大,大小为1的信号量就类似于互斥锁,通过同时只能有一个线程获取信号量实现
阅读全文
摘要:Lock锁的公平性和非公平性 1、lock锁项目使用 在项目中的使用方式: public class AQSTestOne { // 使用公平锁来进行测试 private static final Lock LOCK = new ReentrantLock(true); public static
阅读全文
摘要:# 线程中断 [TOC] ## 1、线程概述 ### 1.1、线程中断的粗暴和柔性 在以前的JDK版本中,如果不想要线程继续运行,那么需要中断线程的话,那么可以直接将线程stop掉; 但是这样子在线程中工作的程序可能会收到一定的影响,比如说在批量提交数据阶段,其中的一个线程直接被中断掉,那么将会导致
阅读全文
摘要:# LockSupport [TOC] ## 一、为什么需要LockSupport类 来看下在没有LockSupport之前,是怎么**实现让线程等待/唤醒**的。在没有LockSupport之前,线程的挂起和唤醒咱们都是通过Object的wait和notify/notifyAll方法实现。 那如果
阅读全文
摘要:# syncronzied关键字 [TOC] ## 1、为什么需要syncronized关键字 在计算机中多线程在访问共享资源的时候,在对共享资源进行访问并修改的时候,会导致出现数据问题。 所以为了解决这种问题,引入了锁的概念。下面看看不使用锁的时候,然后再看看使用锁的时候 ```java publ
阅读全文
摘要:# HashMap及其衍生 [TOC] ## 0、流程图 首先上来直接上一下hashmap的put流程,然后按照put流程来进行重点分析  kill -9 PID(生产环境谨慎使用) 2、nohup命令 nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时或者关闭客户端该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/
阅读全文
摘要:# 第10章 Redis优化 学习目标 - 了解Redis缓存集群方案 - 搭建集群环境 - 能够使用spring整合Redis集群环境 [TOC] 本章内容我们的主题为Redis,目前Redis在企业中的应用已经非常广泛,同时Redis也是面试中的重点内容。 # 1. Redis缓存相关问题 ##
阅读全文
摘要:1. 以前日期时间类的问题 2. JDK8获取时间对象 LocalDate(年月日) LocatTime(时分秒) LocatDateTime(年月日时分秒) public static LocalDateTime now() : 当前时间的日期时间对象 public static LocalDat
阅读全文
摘要:一、File基本知识点 1. File 构造方法: File(String pathname) File(String parent, String child) File(File parent, String child) 相对路径和绝对路径 成员方法: 创建功能 createNewFile()
阅读全文