Java基础
文章平均质量分 80
T-Bryant
这个作者很懒,什么都没留下…
展开
-
Java基础 sync+long、Atomic、LongAdder性能比较
import java.util.concurrent.atomic.AtomicLong;import java.util.concurrent.atomic.LongAdder;public class SyncVsAtomicVsLongAdder { private static long count1 = 0; private static AtomicLong c...原创 2020-03-01 15:35:50 · 309 阅读 · 0 评论 -
Java基础 线程 & 线程池
Java线程状态NEW新建状态:线程创建完成,调用start()方法之前。RUNNABLE运行状态:调用start()方法,线程由NEW状态进入RUNNABLE状态。RUNNABLE状态包含READY和RUNNINGREADY状态:等待CPU时间片。RUNNING状态:任务正在被CPU处理,调用yield()方法让出CPU,线程由RUNNING状态进入READY状态。BLOCKED...原创 2020-02-06 18:12:48 · 195 阅读 · 0 评论 -
Java基础 代理模式 实现JDK动态代理
本文从0开始实现JDK动态代理功能,代理模式更多扩展,请参考此链接Java基础 代理模式。JDK动态代理应用JDK动态代理角色划分业务逻辑接口类:需要被代理的接口类。业务逻辑类:具体业务逻辑代码(增删改查)。代理逻辑接口类:JDK提供的InvocationHandler接口。代理逻辑类:具体业务逻辑代码(修改目标方法)。代理生成类:JDK提供的Proxy类。实体类Userpubl...原创 2019-12-15 21:31:53 · 193 阅读 · 0 评论 -
Java基础 代理模式
代理是一个多义词,它常出现在我们的生活中:比如品牌代理、货运代理、代理商等。代理就是起到了中介的作用,而我今天要说的代理,它是一种计算机技术的术语。代理模式角色划分目标对象:target object代理对象:proxy object静态代理场景:需要给一个功能添加日志,但没有源码继承聚合(基于接口)动态代理...原创 2019-12-15 21:02:12 · 177 阅读 · 0 评论 -
Java基础 BIO & NIO 设计思想
我是鲁班学员。BIOBIO角色划分:服务端+客户端server端代码public class BIOServer { static byte[] bytes = new byte[1024]; public static void main(String[] args) { try { ServerSocket serverSock...原创 2019-11-29 15:42:00 · 308 阅读 · 0 评论