首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Java
订阅
Java知识积累
ChenHaHa
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
美团面试官问我一个字符的String.length()是多少,我说是1,面试官说你回去好好学一下吧
本文首发于微信公众号:程序员乔戈里以上结果输出为7。小萌边说边在IDEA中的win环境下选中String.length()函数,使用ctrl+B快捷键进入到String.length()的定义。接着使
单例模式
单例谁都会写,而且五花八门,且随洒家来瞅瞅。 太easy了,没什么说的,优点是"有可能"省内存,万一没人要就不创建,就省了内存,缺点是如果多个人同时一起要,可能创建多个,说白了就是"非线程安全"。怎么解决?看下面的恶汉式。 代码有一点需要注意: 单例对象要加"volatile"…
DCL单例要不要加volatile
volatile保证可见性的原理: 凡是被volatile修饰的变量,等价于告诉JVM这个变量是不稳定的,每次使用的时候,都会从主内存读取到工作内存;每次修改的时候,都会刷新到主内存,换句话说,被volatile修饰的变量的修改,是实时反馈到主内存的。 volatile保证有序…
HashMap的数学原理
逻辑流程 HashMap是一个链表数组,也就是一个数组,只不过内部元素为链表。可以简单的理解为: 当HashMap中的元素超过8的时候,链表会进化为一个红黑树,可以大致理解为一个平衡二叉树,左节点都比
Java类加载基础
1 java类加载时机 引起类加载的场景 1 使用new创建对象时 2 读取或设置类的静态变量时(编译期常量除外) 3 使用java.lang.reflect包中方法对类进行反射调用时 4 初始化一个
反射的原理到使用
众所周知,java有三大特性: 封装继承和多态,封装是为了细化权限,继承是为了多态,多态是为了灵活复用。我们又知道,继承破坏了封装,但是,它破坏的不彻底,有没有破坏的更彻底的呢?有,反射! 反射
线程的基础知识
1 线程的基本概念 创建线程的两个方法 线程的基本属性和方法: sleep()方法 yield()方法 join()方法 其他的过时方法(不建议使用): public final void suspe
面试必备-线程中的锁
面试必备: Volatile,Synchronized以及常见锁的使用和原理,隐式锁、显式锁以及CAS的用法。
并发容器
写时复制的List和Set 1 CopyOnWriteArrayList 支持两个原子方法: CopyOnWriteArrayList的实现原理很简单,内部使用ReentrantLock维护一个数组,
并发-线程池和异步任务
线程池 简单使用 构造函数 核心参数 corePoolSize: 核心线程数 maximumPoolSize: 最大线程数 keepAliveTime: 空闲线程存活时间,0表示永久 TimeUnit