![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 76
总有人想害朕
这个作者很懒,什么都没留下…
展开
-
Java如何删除List集合中的元素
https://blog.csdn.net/nrsc272420199/article/details/105371374原创 2021-07-24 03:05:18 · 1698 阅读 · 2 评论 -
Java线程的六种状态及切换
文章目录1、线程状态分类2、状态之间的转换状态图3、线程状态代码示例3.1、NEW3.2、RUNNABLE3.3、BLOCKED3.4、WAITING3.5、TIMED_WAITING3.6、TERMINATED1、线程状态分类Java线程一共划分为6种状态,同一个时刻,线程只能属于其中一种状态,通过线程的getState方法可以获取线程的状态。在Thread类中有一个内部枚举类public enum State,可以看到六种状态的详细介绍状态含义说明NEW初始线程对象已原创 2021-07-24 02:07:36 · 596 阅读 · 1 评论 -
ThreadLocal深入解读
文章目录1、ThreadLocal是什么2、ThreadLocal可以做什么2.1、管理Connection2.2、避免一些参数传递3、ThreadLocal实现的原理3.1、ThreadLocal的set()方法3.2、ThreadLocalMap深入解读3.3、ThreadLocal的get()方法3.4、ThreadLocal原理总结1、ThreadLocal是什么ThreadLocal是多线程环境下,为了变量安全提供的一种解决方案。ThreadLocal提供了线程的局部变量,每个线程都可以通过s原创 2021-05-05 13:18:46 · 141 阅读 · 1 评论 -
JVM垃圾回收机制与垃圾收集器
1111原创 2021-05-03 23:18:25 · 129 阅读 · 0 评论 -
乐观锁和悲观锁
文章目录一、分别是什么?1、乐观锁2、悲观锁二、如何选择?一、分别是什么?1、乐观锁乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,采取在写时先读出当前版本号,然后加锁操作(比较跟上一次的版本号,如果一样则更新),如果失败则要重复读-比较-写的操作。乐观锁的实现:CAS(Compare and Swap)实现:Java中java.util.concurrent.atomic原创 2021-04-23 02:36:37 · 257 阅读 · 0 评论 -
try、catch、finally关于return语句的执行情况
文章目录1、无异常的情况1.1、只有try有return的情况1.2、只有try、catch有return的情况1.3、只有try、finally有return的情况1.4、try、catch、finally都有return的情况2、有异常的情况2.1、只有try、catch有return的情况2.2、只有try、finally有return的情况2.3、try、catch、finally都有return的情况3、总结1、无异常的情况1.1、只有try有return的情况public class Te原创 2021-03-28 22:54:58 · 159 阅读 · 0 评论 -
java.lang.AutoCloseable接口
文章目录1、AutoCloseable接口的介绍2、AutoCloseable接口代码示例1、AutoCloseable接口的介绍从AutoCloseable的注释可知它的出现是为了更好的管理资源,准确说是资源的释放.当一个资源类实现了该接口close方法,在使用try-catch-resources语法创建的资源抛出异常后,JVM会自动调用close 方法进行资源释放.当没有抛出异常正常退出try-block时候也会调用close方法。像数据库链接类Connection,io类InputStr原创 2021-03-22 21:52:27 · 618 阅读 · 0 评论 -
ThreadPoolExecutor线程池详解
文章目录一、基本概念二、缓冲队列BlockingQueue三、饱和策略RejectedExecutionHandler四、线程池的工作方式四、代码演示一、基本概念ThreadPoolExecutor类实现了ExecutorService接口和Executor接口,可以设置线程池corePoolSize,最大线程池大小,BlockingQueue,AliveTime,拒绝策略等。常用构造方法public ThreadPoolExecutor(int corePoolSize,原创 2020-12-06 17:59:58 · 328 阅读 · 0 评论 -
BlockingQueue队列之DelayQueue
文章目录1、基本概念2、DelayQueue能做什么3、实例展示1、基本概念DelayQueue是一个无界的BlockingQueue,它本质就是封装了一个PriorityQueue(优先队列),用于放置实现了Delayed接口的对象,其中的对象只能在其到期时才能从队列中取走。这种队列是有序的,即队头对象的延迟到期时间最长。注意:不能将null元素放置到DelayQueue队列中。2、DelayQueue能做什么1、淘宝订单业务,下单超过30分钟没有付款就自动取消订单(过期订单自动取消)。原创 2020-12-06 13:05:04 · 213 阅读 · 0 评论 -
JVM内存结构
文章目录1、基本概念2、JVM内存结构2.1、程序计数器(Program Counter Register)2.2、方法区(Method Area)2.3、虚拟机栈(Java Virtual Machine Stacks)2.4、Java堆(Java Heap):2.5、本地方法栈(Native Method Stacks)3、总结 &1、基本概念我们都知道,Java代码是要运行在虚拟机上的,而虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途。其原创 2020-10-22 00:51:42 · 197 阅读 · 0 评论 -
RPC框架基本概念和简单实现
文章目录一、基本概念二、技术简介三、最简单的RPC实现1、服务端2、客户端四、开源知名RPC框架一、基本概念RPC的全称是Remote Procedure Call,它是一种进程间的通信方式。允许像调用本地服务一样调用远程服务。可以将RPC框架整体分为三部分:客户端、服务端、注册中心客户端:1、引用服务端暴露出来的接口;2、与注册中心连接,向注册中心发送请求,获取服务地址信息;3、创建服务接口代理,并调用,最后获取返回的结果。服务端:1、实现对外暴露的服务接口;2、与注册中原创 2020-10-18 14:21:37 · 408 阅读 · 0 评论 -
Java生成webservice客户端的几种方式
文章目录一、依赖weblogic生成webservice客户端代码二、用import命令生成webservice客户端代码三、用Apache Cxf生成webservice客户端代码四、用Apache Axis生成webservice客户端代码一、依赖weblogic生成webservice客户端代码需要提前安装好weblogic、ANT、JDK环境依赖weblogic生成的wsdl客户端,环境必须加载weblogic的相关JAR包,客户端才能正确运行build-wsdl-client.xml原创 2020-06-09 23:28:00 · 1515 阅读 · 0 评论 -
Java快速生成一个简单的webservice服务端
文章目录一、编写Java代码二、运行结果三、测试结果本文讲解如何快速发布一个简单的webservice服务端,在实际工作中一般会使用cxf、axis等框架来实现一、编写Java代码package com.wsdl.services;import javax.jws.WebMethod;import javax.jws.WebService;import javax.xml.ws.Endpoint;/** * @author administrator * @date 2020-06原创 2020-06-09 22:18:07 · 1043 阅读 · 0 评论 -
Java代理模式的三种实现
111原创 2020-05-25 23:55:35 · 293 阅读 · 0 评论 -
Java多线程实现的四种方式
文章目录1、继承Thread类,重写run方法2、实现Runnable接口,重写run方法3、通过Callable和FutureTask创建线程4、通过线程池创建线程前面两种可以归结为一类:无返回值,原因很简单,通过重写run方法,run方式的返回值是void,所以没有办法返回结果后面两种可以归结成一类:有返回值,通过Callable接口,就要实现call方法,这个方法的返回值是Object,所以返回的结果可以放在Object对象中1、继承Thread类,重写run方法继承Thread类,重写原创 2020-05-12 21:48:16 · 233 阅读 · 0 评论