java基础
pzzzzzp
这个作者很懒,什么都没留下…
展开
-
CyclicBarrier的使用、分析
CyclicBarrier的使用一、含义:可循环屏障,意思可以多次使用,并且可以阻塞当前线程二、使用场景:一般多线程下使用三、使用方法: //只考虑正常情况下,不考虑线程中断、或者有异常产生... //1.实例化对象,parties为屏障放行的条件 CyclicBarrier barrier=new CyclicBarrier(parties); //2.让当前线程阻塞,每一次await,parties就会减一,直到为0时,就会放行 //3.放行之后,会将parties恢复原来的值,也就是原创 2021-07-13 16:02:30 · 109 阅读 · 0 评论 -
java反射的使用
反射的使用一.获取类的Class对象,相同的类的Class对象是唯一的Class class1=MyTest.class;Class class2=new MyTest().getClass();Class class3=Class.forName("com.xxf.MyTest");//结果为trueSystem.out.println(class1==class2);二、Class方法的使用1、获取成员变量FieldClass class1=MyTest.class;//获取(pu原创 2021-03-21 01:19:51 · 100 阅读 · 1 评论 -
java动态代理的实现及查看代理类源码
动态代理的实现1.代理的类需要有实现接口public class UserServiceImpl implements UserService { public void add() { System.out.println("执行了增加的方法"); }}public interface UserService { void add();}2.接下来要代理UserService,需要一个实现了InvocationHandler的类//使用泛型,可以做原创 2021-03-21 00:16:24 · 716 阅读 · 0 评论 -
多线程同步
synchronized的使用一.同步的实现:利用锁对象来达到同步的效果,如下面的lock//同步代码块synchronized (lock){ for(int i=0;i<100;i++) System.out.println("第"+i+"次执行了方法");}二.当线程执行到这里时,就会使用这个锁对象,此时其他线程来到同步代码块,由于锁对象已经被使用了,就会进行等待,这样就达到了同步的效果,当第一个线程完成同步代码块,就会释放锁对象,此时其他线程才有机会进入三.原创 2021-03-20 00:06:53 · 99 阅读 · 0 评论