首页
学习
活动
专区
工具
TVP
发布

狗哥的 Java 世界

专栏作者
278
文章
290234
阅读量
32
订阅数
Java8 判空新写法!真优雅!
哈喽,小伙伴们好呀。我是狗哥,在文章的开头,说下老生常谈的 NPE 问题,NPE 问题就是:我们在开发中经常碰到的NullPointerException假设我们有两个类,他们的UML类图如下图所示
JavaFish
2022-04-18
3.6K0
JDK9 为何要将 String 的底层实现由 char[] 改成了 byte[]?
小伙伴们好,我是狗哥呀!如果你不是 Java8 的钉子户,你应该早就发现了:String 类的源码已经由 char[] 优化为了 byte[] 来存储字符串内容,为什么要这样做呢?
JavaFish
2022-04-18
2940
HashMap 夺命 14 问!
哈喽,小伙伴们好。金三银四可能很多小伙伴都考虑换个环境,那么面试是少不了的,基础更加重要。
JavaFish
2022-04-18
3120
MySQL 的 JSON 数据类型,YYDS!
用过 MySQL 都知道,关系型的结构化存储存在一定的弊端,因为它需要预先定义好所有的列以及列对应的类型。但是业务在发展过程中,或许需要扩展单个列的描述功能,这时,如果能用好 JSON 数据类型,那就能打通关系型和非关系型数据的存储之间的界限,为业务提供更好的架构选择。
JavaFish
2022-03-15
2.2K0
元旦到了!一个由 "YYYY-MM-dd" 引发的惨案 !
在元旦假期到来之际,我刚好准备出去飘几天,然而在使用一些 App 的时候,竟然被我发现了一个应该是由于前端粗心而导致的 bug,在 2019.12.30 出发,结果 App 上显示的是 2020.12.30(吓得我以为我的订单下错了,此处是不是该把程序员拉去祭天了)。
JavaFish
2022-01-17
2020
聊聊 Java 中的 Unsafe 类
哈喽,我是狗哥。Unsafe 类位于 rt.jar 包,Unsafe 类提供了硬件级别的原子操作,类中的方法都是 native 方法,它们使用 JNI 的方式访问本地 C++ 实现库。由此提供了一些绕开 JVM 的更底层功能,可以提高程序效率。
JavaFish
2022-01-17
5050
面试官:你在开发中是如何消除 if-else 的?
哈喽,我是狗哥。最近在做代码重构,发现了很多代码的烂味道。其他的不多说,今天主要说说那些又臭又长的 if...else 要如何重构。
JavaFish
2022-01-17
1.5K0
面试官:Redis 的常见使用场景有哪些?
例如:热点数据缓存(例如报表、明星出轨),对象缓存、全页缓存、可以提升热点数据的访问数据。
JavaFish
2021-08-25
7.8K1
20 张图读懂高并发中的线程与线程池
你可能会有疑问,讲多线程为什么要从CPU说起呢?原因很简单,在这里没有那些时髦的概念,你可以更加清晰的看清问题的本质。
JavaFish
2021-08-25
4970
CPU 核数与线程数有什么关系?
你没猜错,做菜之前先去下一份菜谱,照着菜谱一步步来:起锅烧油、葱姜蒜末下锅爆香、倒入切好的食材、大火翻炒、加入适量酱油、加入适量盐、继续翻炒、出锅喽!
JavaFish
2021-08-25
2.2K0
面试官:什么是布隆过滤器?如何解决高并发缓存穿透问题?
日常开发中,大家经常使用缓存,但是你知道大型的互联网公司面对高并发流量,要注意缓存穿透问题吗!!! 本文会介绍布隆过滤器,空间换时间,以较低的内存空间、高效解决这个问题。
JavaFish
2021-07-29
1.1K0
面试官:count(*) 怎么优化?
哈喽,我是狗哥。小伙伴都知道我最近换工作了,薪资、工作内容什么的都是我比较满意的。五月底也面试了有 6、7 家公司,应该拿了有 5 个 offer。这段时间也被问了很多面试题,我打算写一个专题分享出来,希望对你们有所帮助~
JavaFish
2021-07-05
1.6K1
万字长文,38 图爆肝 Redis 基础!
Redis 在互联网技术存储方面的使用可以说是非常广泛了,只要是接触过 Java 开发的朋友就算你没用过,都会听过它。在面试也是非常高频的一个知识点。
JavaFish
2021-04-29
4340
女朋友问我:什么是 MySQL 的全局锁、表锁、行锁?
小胖真的让人不省心。继上次小胖误删数据之后,这次这货直接给我把整个表锁住了。页面无响应,用户疯狂投诉,我特么脸都绿了。。。
JavaFish
2021-04-29
1.1K0
小胖问我:MySQL 事务与 MVCC 原理?
数据库事务指的是一组数据操作,事务内的操作要么就是全部成功,要么就是全部失败,什么都不做,其实不是没做,是可能做了一部分但是只要有一步失败,就要回滚所有操作,有点一不做二不休的意思。
JavaFish
2021-04-13
4990
工作三年,小胖连 Clone 源码都没读过?真的菜!
哈喽,我是狗哥。这是 Java 源码剖析的第三篇。克隆这个知识点在工作中使用不多,很容易被人忽略。但是面试中的面试官就很常问,因此小伙伴们还是要了解下。另外前两篇的链接在这里有兴趣的小伙伴可以看看:
JavaFish
2021-02-03
3490
小胖问我:为什么 Switch 支持 String 却不支持 Long?
我们知道 Java Switch 支持byte、short、int 类型,在 JDK 1.5 时,支持了枚举类型,在 JDK 1.7 时,又支持了 String类型。那么它为什么就不能支持 long 类型呢,明明它跟 byte、short、int 一样都是数值型,它又是咋支持 String 类型的呢?
JavaFish
2021-02-03
7280
工作三年,小胖连 HashMap 源码都没读过?真的菜!
在 JDK 1.7 中 HashMap 是以「数组加链表」的形式组成的,JDK 1.8 之后新增了「红黑树」的组成结构,「当链表长度大于 8 并且 hash 桶的容量大于 64 时,链表结构会转换成红黑树结构」。所以,它的组成结构如下图所示:
JavaFish
2021-02-03
3780
工作三年,小胖连 String 源码都没读过?真的菜!
String 类相信大家都不陌生,它是引用类型,同时也是工作中用的最多的一个类。那它到底是怎么实现的呢?我们看源码:
JavaFish
2021-02-03
4730
啥?小胖连 JVM 对锁做了那些优化都不知道?真的菜!
来到多线程的第十五篇,对前十四篇感兴趣的请点文末底部的上、下一篇标签。这篇来聊聊 JVM 对 synchronized 做了那些优化?
JavaFish
2021-01-18
4880
点击加载更多
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档