
JAVA
写完打豆豆
这个作者很懒,什么都没留下…
展开
-
Semaphore用法
Semaphore翻译成字面意思为 信号量,Semaphore可以控同时访问的线程个数,通过 acquire() 获取一个许可,如果没有就等待,而 release() 释放一个许可。package com.juc;import java.util.concurrent.Semaphore;public class SemaphoreTest { public static void main(String[] args) { int N = 8; Semap原创 2021-07-03 22:46:00 · 373 阅读 · 0 评论 -
饿汉式单例
package com.singleTon;/** * 饿汉式单例模式 * 饿汉模式下什么时候触发初始化 * 只有在主动使用该类的时候才会初始化, * 例如:main方法在该类中,获取静态属性、使用静态方法、利用反射获取类、初始化一个类的子类 * */public class HangrySingleTon { private static HangrySingleTon instance = new HangrySingleTon(); private Hangry原创 2021-07-02 21:51:40 · 138 阅读 · 0 评论 -
线程安全的饿汉单例模式
/** * 双重检索的饿汉式单例 * 步骤:1、声明私有静态变量 * 2、私有构造器(目的是防止外部new) * 3、提供一个公有的静态方法 */public class LazySingleTon { //使用volatile的原因是:防止指令重排 private volatile static LazySingleTon instance; private LazySingleTon(){ } /** * new的执行过程:1、开辟空原创 2021-07-02 21:43:53 · 216 阅读 · 0 评论 -
jps不是内部或外部命令
JPS不是内部或外部命令需要把Path环境变量中的JDK和JRE的bin分开原来:更改后:在这里插入图片描述终端可以使用jps命令:原创 2021-05-16 19:09:59 · 160 阅读 · 0 评论 -
idea中使用git
https://blog.youkuaiyun.com/weixin_39274753/article/details/79722522转载 2021-03-26 17:20:46 · 128 阅读 · 0 评论 -
创建对象的方式
创建对象的几种方式:1、使用new创建对象2、使用Class对象newInstance方法3、使用Constructor的newInstance方法4、采用clone//原始类public class Hello { public void sayWorld(){ System.out.println("Hello world!"); }}//1、使用new关键字public class TestHello { public static void原创 2021-03-06 22:17:30 · 229 阅读 · 0 评论 -
热部署Devtools
1,工程中添加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <version>XXX</version> <scope>runtime</scope原创 2021-01-31 15:27:22 · 121 阅读 · 0 评论 -
mybaties调用存储过程
Mybaties调用存储过程1、创建实体类package com.po;public class User { private Integer id; private String name; private String sex; private Integer age; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String ge原创 2020-10-21 21:26:14 · 300 阅读 · 0 评论 -
synchronized和Lock的区别
1、synchronized是JVM层面的锁,底层通过monitorEnter和monitorExit实现的,Lock是具体的类,是api层面的锁;2、synchronized是非公平锁,ReentrantLock默认是非公平锁,也可以是公平锁。3、synchronized不可中断执行,ReentrantLock可通过lock.lockInterruptibly()等方法中断执行;4、sy...原创 2020-02-18 13:46:56 · 134 阅读 · 0 评论 -
JAVA的线程状态
JAVA的线程状态:NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED;要获取Java线程的状态可以使用 java.lang.Thread类中定义的 getState()方法,获取当前线程的状态就可以使用Thread.currentThread().getState()来获取。该方法返回的类型是一个枚举类型,是Thread内部的一个枚举...原创 2020-02-12 16:48:53 · 216 阅读 · 0 评论