java
七月听雪
这个作者很懒,什么都没留下…
展开
-
com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resou
c3p0获取链接失败解决root causecom.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source. com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319原创 2020-12-22 23:11:13 · 1305 阅读 · 0 评论 -
单例模式
懒汉模式:线程不安全懒汉模式:public class Singleton { private static Singleton instance; private Singleton (){} public static Singleton getInstance() { if (instance == null) { ...原创 2020-04-05 19:46:53 · 140 阅读 · 0 评论 -
Java的数据类型
原创 2020-04-05 14:45:37 · 138 阅读 · 0 评论 -
java线程安全问题之静态变量、实例变量、局部变量
原创 2020-04-05 14:40:03 · 219 阅读 · 0 评论 -
锁
同步队列和条件队列的关系:https://blog.csdn.net/disiwei1012/article/details/78596731原创 2020-04-05 10:02:34 · 166 阅读 · 0 评论 -
AQS
AbstractQueuedSynchronizer抽象队列同步器简称AQS,它是实现同步器的基础组件,juc下面Lock的实现以及一些并发工具类就是通过AQS来实现的。AQS是一个抽象类。不可以被实例化,它的设计之初就是为了让子类通过继承来实现多样的功能的。它内部提供了一个FIFO的等待队列,用于多个线程等待一个事件(锁)。java提供了两种方式来加锁,一种是关键字:synchron...原创 2020-04-05 09:11:25 · 242 阅读 · 0 评论 -
重载 重写底层原理
重载:静态绑定:原创 2020-03-27 08:06:34 · 584 阅读 · 0 评论 -
Java 常量池
class常量池:运行时常量池:字符串常量池:字符串常量池是全局共享的。原创 2020-03-24 21:17:47 · 130 阅读 · 0 评论 -
String.intern()
每次用intern()方法之后,都是先去常量池中去查找,找不到就把堆里的对象放到常量池中。因为intern()是对象的方法,所以要先有String对象才能用intern()方法,也就是当常量池中没有对应的字符串对象,堆里肯定有。常见问题:...原创 2020-03-24 19:15:45 · 172 阅读 · 0 评论 -
String、StringBuilder以及StringBuffer
String类:深入理解String、StringBuffer、StringBuilder:性能比较:一般结论:相关面试题:6.String str = new String("abc")创建了多少个对象?...原创 2020-03-24 18:22:33 · 150 阅读 · 0 评论 -
java——反射
1. 类的加载、连接和初始化:1.1 类的加载:双亲委派机制:类加载器:1.2 类的链接:1.3 类的初始化:2 反射:2.1 反射的基本信息:2.1.1class对象:2.2 Java反射机制的类库支持:2.2.1 获取class对象:2.2.2 获取构造器:3. 反射相关类和方法:3.1 c...原创 2020-03-24 16:24:05 · 159 阅读 · 0 评论 -
Java——设计模式
http://c.biancheng.net/view/1338.html原创 2020-03-24 10:48:47 · 117 阅读 · 0 评论 -
Java 线程池
线程池实现原理:使用实例:2345678910111213141516171819202122232425262728293031323334public class Test { public static void main(String[] args) { ...原创 2020-03-24 10:33:26 · 111 阅读 · 0 评论 -
java——装箱拆箱
自动装箱:实验:equals方法虽然是装箱了,但是比较的仍然是数值。原创 2020-03-23 21:56:36 · 150 阅读 · 0 评论 -
实现多线程的方式
继承Thread类实现多线程:覆写Runnable()接口实现多线程:覆写Callable接口:通过线程池启动多线程:https://blog.csdn.net/yangyechi/article/details/88079983https://blog.csdn.net/weixin_41891854/article/...原创 2020-03-22 15:44:57 · 149 阅读 · 0 评论 -
同步容器和并发容器
同步容器:并发容器CopyOnWrite:并发容器ConcurrentHashMap:原创 2020-03-22 13:51:31 · 147 阅读 · 0 评论 -
静态内部类 与 内部类区别
原创 2020-03-22 13:15:09 · 90 阅读 · 0 评论 -
内存泄漏与内存溢出
https://my.oschina.net/sunmin/blog/3034336原创 2020-03-22 11:37:04 · 118 阅读 · 0 评论 -
hashCode和equals的作用和区别
https://www.cnblogs.com/kexianting/p/8508207.htmlhttps://blog.csdn.net/weixin_44130081/article/details/90266817原创 2020-03-21 15:54:26 · 97 阅读 · 0 评论 -
java异常体系
原创 2020-03-20 16:18:24 · 133 阅读 · 0 评论 -
Redis 数据类型
https://www.runoob.com/redis/redis-data-types.html原创 2020-03-18 20:40:21 · 101 阅读 · 1 评论 -
jvm 方法区
串池:以代码举例:原创 2020-02-17 14:41:50 · 158 阅读 · 0 评论 -
常量池
原创 2020-02-17 11:30:02 · 103 阅读 · 0 评论 -
线程上下文类加载器
原创 2020-02-17 10:48:08 · 98 阅读 · 0 评论 -
GC
GC涉及的知识点:会导致碎片化问题:原创 2020-02-16 20:39:18 · 182 阅读 · 0 评论 -
jvm
java 程序执行过程:运行时数据区:PC计数器:虚拟机栈:操作数栈的例子:动态链接:本地方法接口:本地方法栈:...原创 2020-02-16 19:08:56 · 111 阅读 · 0 评论 -
方法锁 对象锁 类锁
原创 2020-02-15 16:47:33 · 147 阅读 · 0 评论 -
乐观锁 悲观锁
举一个例子来说明CAS的过程:import java.util.concurrent.atomic.AtomicBoolean;/** * @author hrabbit * 2018/07/16. */public class AtomicBooleanTest implements Runnable { pri...原创 2020-02-15 16:13:28 · 115 阅读 · 0 评论 -
HashMap_3
LinkedHashMap:LinkedHashMap的实现细节:https://www.cnblogs.com/ganchuanpu/p/8908093.htmlConcureentHashMap:jdk1.8之前是利用分段锁机制保证线程安全的,jdk1.8之后是利用CAS+Synchronized机制保证线程安全的...原创 2020-02-15 12:29:12 · 200 阅读 · 0 评论 -
HashMap_2
简言之,就是让hash值得高位也参与到运算里面,这样减少了hash冲突。源码里的注释:原创 2020-02-14 20:16:33 · 100 阅读 · 0 评论 -
HashMap
JDK1.7:初始化变量:put()方法:key为null:扩容:计算bucket下标:在目标bucket中遍历链表:get()方法:扩容引起的线程不安全(死循环):注意高亮地方的代码,可以知道JDK1.7扩容转移链表中的结点是头插...原创 2020-02-14 18:08:05 · 204 阅读 · 0 评论 -
并发编程
线程安全:线程池:原创 2020-02-03 11:12:10 · 101 阅读 · 0 评论 -
三大集合
原创 2020-02-03 10:05:26 · 167 阅读 · 0 评论 -
错误与异常
原创 2020-02-02 12:19:19 · 107 阅读 · 0 评论 -
接口与抽象类
原创 2020-02-02 12:10:51 · 119 阅读 · 0 评论 -
多态
定义:简单就是:父类引用指向子类对象使用场景:public class animal { public void eat(){ System.out.println("animal eat"); } public void shout(){ System.out.println("animal shout");...原创 2020-02-02 12:00:29 · 126 阅读 · 0 评论 -
面向对象
继承:多态:原创 2020-01-30 12:11:49 · 91 阅读 · 0 评论 -
多线程交替打印
public class thread { public static void main(String[] args) { // 两个线程的锁对象是同一个 thread tt = new thread(); JiClass jiClass = tt.new JiClass(tt); OuClass ouClass = tt...原创 2020-01-08 11:22:33 · 180 阅读 · 0 评论 -
多线程
多线程的生命周期:线程的五种基本状态:线程的六种状态:https://blog.csdn.net/qq_22771739/article/details/82529874https://www.cnblogs.com/signheart/category/969720.html...原创 2020-01-06 21:32:13 · 133 阅读 · 0 评论 -
关键字——static
java中的static关键字有4种使用场景:static成员变量: 在类中一个成员变量可用static关键字来修饰,称为静态成员变量。 静态成员变量是属于类的,并不属于某一个对象,即使有多个该类的实例对象,静态成员变量也只有一个。只要静态成员变量所在的类被加载,这个静态成员变量就会被分配内存。相对应的非静态成员变量属于对象而不是类,只有在内存中构建该类的对象时,非静态成员变量...原创 2020-01-06 19:31:55 · 100 阅读 · 0 评论