首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
CoolCity
更多收藏集
微信扫码分享
微信
新浪微博
QQ
20篇文章 · 0订阅
Java 多线程 : JUC 并发工具原理
之前说 AQS 的时候曾经提到过这几个类 , 这几个类有一些各自的特点 , 很符合特定的场景 , 之前在生产上用的还挺舒服
这一次,彻底搞懂Java内存模型与volatile关键字
多线程并发是Java语言中非常重要的一块内容,同时,也是Java基础的一个难点。说它重要是因为多线程是日常开发中频繁用到的知识,说它难是因为多线程并发涉及到的知识点非常之多,想要完全掌握Java的并发相关知识并非易事。也正因此,Java并发成了Java面试中最高频的知识点之一。…
GC 算法 垃圾收集器
垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 MIT 的 Lisp 语言,经过半个多世纪,目前已经十分成熟了
非官方不权威Java面试宝典
前言 这段时间也写了一些东西了,所以今天寻思着把博客系统整理一下,大致方向是为面试服务的,包括知识梳理、练手项目推荐和面试经验等,当然也有纯技术文,但即使这些技术文也是面试高频问题分析,所以我觉得我这
从头捋了一遍 Java 代理机制,收获颇丰
前文提到,动态代理机制使用了反射,Spring 中的 AOP 由于使用了动态代理,所以也相当于使用了反射机制。那么,代理是什么?动态代理又是什么?动态代理中是如何使用反射的?全文脉络思维导图如下: 1. 常规编码方式 在学习代理之前,先回顾以下我们的常规编码方式:所有 inte…
Java线程池实现原理和源码分析
本文章是从2019年11月下旬开始打开写的,一直拖到2020年的年尾才开始写,直到2021年年初才写完。 2019年11月9号我和某东一起从大望路做815公交去燕郊。当时只是因为我正在学习一部分多线程相关的知识点,刚好公交车上没啥事情我俩就唠了唠。当时他问了我一些线程池的问题,…
撸完这篇线程池,我快咳血了!
我们知道,线程需要的时候要进行创建,不需要的时候需要进行销毁,但是线程的创建和销毁都是一个开销比较大的操作。 虽然我们程序员创建一个线程很容易,直接使用 new Thread() 创建就可以了,但是操作系统做的工作会多很多,它需要发出 系统调用,陷入内核,调用内核 API 创建…
一个成熟的Java项目如何优雅地处理异常
异常处理是一个系统最重要的环节,当一个项目变得很大的时候,异常处理和日志系统能让你快速定位到问题。对于用户或者接口调用者而言,优雅的异常处理可以让调用者快速知道问题所在。本文将介绍如何优雅地处理异常。 我们希望所有的错误都以Json的方式返回给客户,因此拿出上次写的通用返回体,…
Lombok有啥牛皮的?SpringBoot和IDEA官方都要支持它!
最近IDEA 2020最后一个版本发布了,已经内置了Lombok插件,SpringBoot 2.1.x之后的版本也在Starter中内置了Lombok依赖。为什么他们都要支持Lombok呢?今天我来讲讲Lombok的使用,看看它有何神奇之处! Lombok是一款Java代码功能…
想把Java代码写的更漂亮么?了解一下Try吧
Java的Optional非常好用。我们一般使用Optional做非空处理,省去if的处理。主要的目的,就是为了解决Java中臭名昭著的空指针异常。 比如我们在平常的编码中,经常遇到对输入参数的非空判断。 这种代码一多,我们的程序就会慢慢变成shit mountain。这个时候…