线程的等待和唤醒
synchronized 解决了多线程竞争的问题: 我们可以 在 synchronized块中安全的对一个变量进行修改 class TaskQueue{ Queue<String> queue= new LinkedList&l...
synchronized 解决了多线程竞争的问题: 我们可以 在 synchronized块中安全的对一个变量进行修改 class TaskQueue{ Queue<String> queue= new LinkedList&l...
死锁的概念 在多线程编程中,要执行synchronized块: 必须首先获得指定对象的锁: public void add (int m) { synchronized (obj){ this.value +=m; } } java的线程锁...
获取 IDEA 激活码、PyCharm 激活码、WebStorm 激活码和 DataGrip 激活码,提供详细破解教程与永久激活方法。支持 IDEA 永久激活与破解,免费获取注册码与激活码,解决 2024/2025 版本激活问题,轻松实现所有 JetBrains 工具的激活。
larava使用缓存 1.配置和文件位置 laravel中使用默认使用的是文件缓存qvdong驱动,看配置文件 config/cache.php ‘default’ => env(‘CACHE_D...
Bean工厂 package com.test; import java.lang.reflect.Field; import java.lang.reflect.Method; /** * Bean工厂 */ public class B...
isAccessible()和setAccessible(true); 1、 当isAccessible()的结果是false时不允许通过反射访问该字段 2、 当该字段时private修饰时isAccessible()得到的值是false,...
Autowired注解 1、 这是一个标识注解(没有任何成员方法) 2、 该注解用于类中的属性上,主要用于依赖注入的标识 import java.lang.annotation.ElementType; import java.lang.a...
自定义注解 (只可以解析RUNTIME的才有效果) 1、 只有一个成员的注解 public @interface Description{ String desc(); } @Description(desc="the name metho...
classLoader对象和Class对象 (类的类型) 每个ClassLoader对象都是一个java.lang.ClassLoader的实例。 每个Class对象都被这些ClassLoader对象所加载,通过继承java.lang.Cl...
Java反射机制——获取成员变量&构造函数 一、成员变量是java.lang.reflect.Field的对象 1、Field类封装了关于成员变量的操作 2、Field[] fs = c.getFields()方法获...
Class.forName(“类的全称”) Class.forName(“类的全称”)不仅仅代表类的类类型 还代表了动态加载类 动态加载和静态加载 编译时刻加载类是静态加载类、运行时刻加载类是...