2024年6月23日
摘要: 一、写在开头 在上一篇学习序列化的文章中a56爆大奖在线娱乐们提出了这样的一个问题: “如果在a56爆大奖在线娱乐的对象中,有些变量并不想被序列化应该怎么办呢?” 当时给的回答是:不想被序列化的变量a56爆大奖在线娱乐们可以使用transient或static关键字修饰;transient 关键字的作用是阻止实例中那些用此关键字修饰的的变量序列化;当对 阅读全文
posted @ 2024-06-23 17:48 JavaBuild 阅读(204) 评论(0) 推荐(0) 编辑
  2024年6月20日
摘要: 中午一个网友来信说自己和面试官干起来了,看完他的描述真是苦笑不得,这年头是怎么了,最近互联网CS消息满天飞,怎么连面试官都SB起来了呢? 大概是这样的:这位网友面试时被问及了Serializable接口的底层实现原理,因为这是一个标识性的空接口,大部分同学在学习时都秉持着会用就行(说实话,Build 阅读全文
posted @ 2024-06-20 14:09 JavaBuild 阅读(1718) 评论(5) 推荐(2) 编辑
  2024年6月17日
摘要: 一、写在开头 上一篇文章中,a56爆大奖在线娱乐们介绍了Java IO流中的4个基类:InputStream、OutputStream、Reader、Writer,那么这一篇中,a56爆大奖在线娱乐们将以四个基类所衍生出来,应对不同场景的数据流进行学习。 二、衍生数据流分类 a56爆大奖在线娱乐们上面说了java.io包中有40多个类,都从InputS 阅读全文
posted @ 2024-06-17 08:55 JavaBuild 阅读(225) 评论(0) 推荐(0) 编辑
  2024年6月15日
摘要: 一、写在开头 在计算机领域中百分之九十以上的程序拥有着和外部设备交互的功能,这就是a56爆大奖在线娱乐们常说的IO(Input/Output:输入/输出),所谓输入就是外部数据导入计算机内存中的过程,输出则是将内存或者说程序中的数据导入到外部存储中,如数据库、文件以及其他本地磁盘等。 二、什么是IO流 这种输入输出往 阅读全文
posted @ 2024-06-15 08:38 JavaBuild 阅读(660) 评论(0) 推荐(1) 编辑
  2024年6月14日
摘要: 一、写在开头 在a56爆大奖在线娱乐们一开始讲多线程的时候,提到过异步与同步的概念,这里面a56爆大奖在线娱乐们再回顾一下: 同步:调用方在调用某个方法后,等待被调用方返回结果;调用方在取得被调用方的返回值后,再继续运行。调用方顺序执行,同步等待被调用方的返回值,这就是阻塞式调用; 异步:调用方在调用某个方法后,直接返回,不需要等待被 阅读全文
posted @ 2024-06-14 09:41 JavaBuild 阅读(287) 评论(0) 推荐(3) 编辑
  2024年6月9日
摘要: 面试场景模拟 面试官:小伙子平时开发中用过线程池吗?聊一聊它 a56爆大奖在线娱乐:肯定用过啊,然后把build的线程池十八问一顿巴拉巴拉 面试官:不错不错,挺了解的嘛,那你知道怎么给线程池命名?手写一个工厂类给线程池命名吧 a56爆大奖在线娱乐:啊这,现场手撕吗?面试官默默的递上A4... 如何给线程池命名?这是一个好问题,如果a56爆大奖在线娱乐们 阅读全文
posted @ 2024-06-09 15:44 JavaBuild 阅读(314) 评论(0) 推荐(0) 编辑
  2024年6月6日
摘要: a56爆大奖在线娱乐们在学线程的时候了解了几种创建线程的方式,比如继承Thread类,实现Runnable接口、Callable接口等,那对于线程池的使用,也需要去创建它,在这里a56爆大奖在线娱乐们提供2种构造线程池的方法: 方法一: 通过ThreadPoolExecutor构造函数来创建(首选) 这是JDK中最核心的线程池工具类, 阅读全文
posted @ 2024-06-06 08:29 JavaBuild 阅读(359) 评论(1) 推荐(1) 编辑
  2024年6月2日
摘要: 写在开头 面试官:“小伙子,线程池使用过吗,来聊一聊它吧!” a56爆大奖在线娱乐:“好的,然后巴拉巴拉一顿输出之前看过的build哥线程池十八问...” 面试官满意的点了点头,紧接着问道:“那你知道如何优雅的关闭线程池吗?” a56爆大奖在线娱乐:“知道知道,直接调用shutdownNow()方法就好了呀!” 面试官脸色一变,微怒道 阅读全文
posted @ 2024-06-02 09:52 JavaBuild 阅读(446) 评论(1) 推荐(0) 编辑
  2024年6月1日
摘要: 写在开头 什么!程序员不乖乖写代码,跑去写小说了?哈哈,没错!build哥一时兴起写了篇《雪中悍刀行》的番外,是关于剑九黄的,请诸君品鉴!(第一次写,喷轻点呀) build哥除了写代码之外,日常生活中挺喜欢看小说的,尤其是烽火戏诸侯的《雪中悍刀行》,可谓大爱,几乎每晚睡觉前必看。不过,这部小说去年就 阅读全文
posted @ 2024-06-01 15:35 JavaBuild 阅读(181) 评论(3) 推荐(0) 编辑
  2024年5月31日
摘要: 一、写在开头 在上一篇文章a56爆大奖在线娱乐们写《Java并发编程之线程池十八问》的时候,鉴于当时的篇幅已经过长,很多内容就没有扩展了,在这篇文章里对一些关键知识点进行对比补充。 二、Runnable vs Callable 在创建线程的时候,一般会选用 Runnable 和 Callable 两种方式。 【源码对 阅读全文
posted @ 2024-05-31 09:09 JavaBuild 阅读(262) 评论(0) 推荐(0) 编辑
  2024年5月30日
摘要: 写在开头 之前给一个大四正在找工作的学妹发了自己总结的关于Java并发中线程池的面试题集,总共18题,将之取名为《Java并发编程之线程池十八问》,今天聊天时受了学妹的夸赞,心里很开心,毕竟自己整理的东西对别人起到了一点帮助,记录一下! Java并发编程之线程池十八问 经过之前的学习,a56爆大奖在线娱乐们知道在Ja 阅读全文
posted @ 2024-05-30 09:39 JavaBuild 阅读(374) 评论(0) 推荐(1) 编辑
  2024年5月27日
摘要: 一、写在开头 今天和一个之前研二的学妹聊天,聊及她上周面试字节的情况,着实感受到了Java后端现在找工作的压力啊,记得在18,19年的时候,研究生计算机专业的学生,背背八股文找个Java开发工作毫无问题,但现在即便你是应届生,问的考题也非常的深入和细节了,只会背八股,没有一定的代码量和项目积累,根本 阅读全文
posted @ 2024-05-27 08:38 JavaBuild 阅读(913) 评论(2) 推荐(0) 编辑
  2024年5月25日
摘要: 一、写在开头 依稀记得多年以前的一场面试中,面试官从Java并发编程问到了锁,从锁问到了原子性,从原子性问到了Atomic类库(对着JUC包进行了刨根问底),从Atomic问到了CAS算法,紧接着又有追问到了底层的Unsafe类,当问到Unsafe类时,a56爆大奖在线娱乐就知道这场面试废了,这似乎把祖坟都能给问冒烟 阅读全文
posted @ 2024-05-25 07:41 JavaBuild 阅读(619) 评论(1) 推荐(5) 编辑
  2024年5月21日
摘要: 一、写在开头 在前面的博文中a56爆大奖在线娱乐们学习了volatile关键字,知道了它可以保证有序性和可见性,但无法保障原子性,结局原子性问题推荐使用synchronized、Lock或者AtomicInteger;a56爆大奖在线娱乐们还学习过CAS算法,在那篇博文中a56爆大奖在线娱乐们同样也提及atomic。那么今天,a56爆大奖在线娱乐们就来好好学一学Atom 阅读全文
posted @ 2024-05-21 08:08 JavaBuild 阅读(179) 评论(0) 推荐(0) 编辑
  2024年5月19日
摘要: 一、写在开头 a56爆大奖在线娱乐们在学习集合或者说容器的时候了解到,很多集合并非线程安全的,在并发场景下,为了保障数据的安全性,诞生了并发容器,广为人知的有ConcurrentHashMap、ConcurrentLinkedQueue、BlockingQueue等,那你们知道ArrayList也有自己对应的并发容器 阅读全文
posted @ 2024-05-19 16:42 JavaBuild 阅读(182) 评论(0) 推荐(0) 编辑
  2024年5月18日
摘要: 一、写在开头 昨晚收到一个粉丝在私信的留言如下: build哥,今天参加了网易的提前批,可以说是一次惨痛的面试体验🤣,直接被虚拟线程问倒了,无论是在校学习的时候还是在公司实习的时候,都使用的是Java8更多,或者Java11,比较点子背的是面试a56爆大奖在线娱乐的这一个面试官,他们团队刚好在做Java21的切换, 阅读全文
posted @ 2024-05-18 20:26 JavaBuild 阅读(367) 评论(0) 推荐(2) 编辑
  2024年5月12日
摘要: 一、写在开头 a56爆大奖在线娱乐们在上一篇文章中提到了通过EasyExcel处理Mysql百万数据的导入功能(一键看原文),当时a56爆大奖在线娱乐们经过测试数据的反复测验,100万条放在excel中的数据,4个字段的情况下,导入数据库,平均耗时500秒,这对于a56爆大奖在线娱乐们来说肯定难以接受,今天a56爆大奖在线娱乐们就来做一次性能优化。 二、性能瓶颈分析 一 阅读全文
posted @ 2024-05-12 17:27 JavaBuild 阅读(1627) 评论(5) 推荐(0) 编辑
  2024年5月11日
摘要: 一、写在开头 今天终于更新新专栏 《EfficientFarm》 的第二篇博文啦,a56爆大奖在线娱乐主要来记录一下对于EasyExcel的高效应用,包括对MySQL数据库百万级数据量的导入与导出操作,以及性能的优化(争取做到秒级性能!)。 二、如何做技术选型 其实在市面上a56爆大奖在线娱乐们有很多常用的excel操作依赖库,除了 阅读全文
posted @ 2024-05-11 10:07 JavaBuild 阅读(1311) 评论(3) 推荐(2) 编辑
  2024年5月2日
摘要: 一、写在开头 最近一直在更新《Java成长计划》这个专栏,主要是Java全流程学习的一个记录,目前已经更新到Java并发多线程部分,后续会继续更新;而今天准备开设一个全新的专栏 《EfficientFarm》。 EfficientFarm:高效农场,期许软件开发工作能够像很多国外的高效农场一般机械化 阅读全文
posted @ 2024-05-02 13:28 JavaBuild 阅读(496) 评论(2) 推荐(2) 编辑
  2024年4月29日
摘要: 一、写在开头 a56爆大奖在线娱乐们在上一篇写ReentrantReadWriteLock读写锁的末尾留了一个小坑,那就是读写锁因为写锁的悲观性,会导致 “写饥饿”,这样一来会大大的降低读写效率,而今天a56爆大奖在线娱乐们就来将此坑填之!填坑工具为:StampedLock,一个素有Java锁王称号的同步类,也是在 java.util 阅读全文
posted @ 2024-04-29 07:53 JavaBuild 阅读(513) 评论(0) 推荐(0) 编辑
  2024年4月28日
摘要: 写在开头 最近是和java.util.concurrent.locks包下的同步类干上了,素有 并发根基 之称的concurrent包中全是精品,今天a56爆大奖在线娱乐们继续哈,今天学习的主题要由一个大厂常问的Java面试题开始: 小伙子,来说一说Java中的读写锁,你都用过哪些读写锁吧? 这个问题小伙伴们遇到了该 阅读全文
posted @ 2024-04-28 08:43 JavaBuild 阅读(205) 评论(0) 推荐(0) 编辑
  2024年4月22日
摘要: 写在开头 在过去的博文中a56爆大奖在线娱乐们学习了ReentrantLock 与 synchronized这两种Java并发使用频率最高的同步锁,在很多大厂面试题中有个经典考题: ReentrantLock 与 synchronized异同点对比! 今天a56爆大奖在线娱乐们针对这一考题来做一个尽可能全面的总结哈。 Reentran 阅读全文
posted @ 2024-04-22 09:07 JavaBuild 阅读(310) 评论(0) 推荐(1) 编辑
  2024年4月21日
摘要: 写在开头 随手一翻,发现对于Java中并发多线程的学习已经发布了十几篇博客了,多线程 是Java基础中的重中之重!因此,可能还需要十几篇博客才能大致的讲完这部分的知识点,初学者对于这部分内容一定要多花心思,不可马虎!今天a56爆大奖在线娱乐们继续来学习一个重要知识点:ReentrantLock ReentrantLo 阅读全文
posted @ 2024-04-21 11:29 JavaBuild 阅读(191) 评论(0) 推荐(0) 编辑
  2024年4月16日
摘要: 写在开头 面试官:同学,AQS的原理知道吗? a56爆大奖在线娱乐:学过一点,抽象队列同步器,Java中很多同步工具都是基于它的... 面试官:好的,那其中CyclicBarrier学过吗?讲一讲它的妙用吧 a56爆大奖在线娱乐:啊,这个,这个a56爆大奖在线娱乐平时写代码没用过... 面试官:那你回去再学学吧! 随着Java的国内竞争环境逐渐激烈,面 阅读全文
posted @ 2024-04-16 08:31 JavaBuild 阅读(242) 评论(0) 推荐(1) 编辑
  2024年4月14日
摘要: 写在开头 在很多的面经中都看到过提问 CountDownLatch 的问题,正好a56爆大奖在线娱乐们最近也在梳理学习AQS(抽象队列同步器),而CountDownLatch又是其中典型的代表,a56爆大奖在线娱乐们今天就继续来学一下这个同步工具类! CountDownLatch有何作用? a56爆大奖在线娱乐们知道AQS是专属于构造锁和同步器的一个抽 阅读全文
posted @ 2024-04-14 15:10 JavaBuild 阅读(302) 评论(0) 推荐(1) 编辑