摘要:
[toc] 引言 《创建单例模式的x种方法》在网上已经烂大街了,但这么多方式,会加重我的记忆负担,所以还得做个比较,把知识点浓缩一下,最终列出了三个比较常见的方法(其实是两个,只有静态内部类和枚举没有隐患,双检锁是有隐患的,请看下文中的 防反射攻击处理 一节) 三种方法比较 如果想要懒加载: 我更推 阅读全文
摘要:
[toc] 引言 最近在学习单例模式的多种实现方法,单例的重点有4个: 1.是否懒加载 2.是否线程同步 3.反射攻击 4.序列化攻击 其中枚举单例除了不能懒加载,可以实现线程同步,防止反射攻击和序列化攻击。 大部分的博客,只是用代码论证了枚举单例确实避免了这些问题,却并未完整说出这3个问题是如何避 阅读全文
摘要:
[toc] 定义 A是B的子类,A比B多几条属性 要点: A是B的子类,但List<A 不是List<B 的子类。所以想直接转换是不行的。 子类转父类 父类转子类 阅读全文
摘要:
[TOC] 场景 我mysql里有3个表 1.车辆信息表carInfo 字段为: carID,主键 2.终端信息表terminalID 字段为: terminalID,主键 3.车辆与终端的中间表car_bind_terminal carID,外键 terminalID,外键 任务(需求) 现在需要 阅读全文
摘要:
之前再看java关于线程的某视频时,发现在JDK源码中,join()=join(0)=wait()=wait(0),但是视频中在join()了之后,并没有用notify()或者notifyAll()去唤醒,遂有了一个疑问: 在什么情况下,不写notify()或者notifyAll()就能唤醒被wai 阅读全文
摘要:
一、equals方法和hashcode的关系 根据Object.hashCode的通用约定: 如果两个对象相同(equals方法返回true),那么hashcode也相等。(图1) 如果两个对象的hashcode相等,这两个对象不一定相同,因为可能发生了hash冲突。(图2) 啥是hash冲突呢? 阅读全文
摘要:
目录: 一、简介 二、安装 三、配置与运行 四、运行检测 五、答疑环节 一、简介 本文通过在服务器上安装coturn这个软件,实现搭建STUN服务器和TURN服务器。 coturn 简介:是一个免费的开源的 TURN/STUN 服务器。coturn 服务器完整的实现了 STUN/TURN/ICE 协 阅读全文
摘要:
题目: 在仅包含 0 和 1 的数组 A 中,一次 K 位翻转包括选择一个长度为 K 的(连续)子数组,同时将子数组中的每个 0 更改为 1,而每个 1 更改为 0。 返回所需的 K 位翻转的次数,以便数组没有值为 0 的元素。如果不可能,返回 -1。 示例 1: 输入:A = [0,1,0], K 阅读全文
摘要:
题目: 有 n 个气球,编号为0 到 n-1,每个气球上都标有一个数字,这些数字存在数组 nums 中。 现在要求你戳破所有的气球。每当你戳破一个气球 i 时,你可以获得 nums[left] * nums[i] * nums[right] 个硬币。 这里的 left 和 right 代表和 i 相 阅读全文