文章 2022-06-13 来自:开发者社区

Java面试之String、StringBuffer和StringBuilder的区别和原理

问题源头这个问题说实话,我是被公司老板反问过的,吃过亏的。所以专门研究了一下并且分享给不懂这块知识点的人代码底层如下图所示,简单介绍一下String是一个变量,它是不可变的StringBuilder,StringBuffer是可变的StringBuilder是线程不安全的,也就是说它的代码底层实现就是每个函数都没有加 synchronized,这就导致了线程不安全,反而效率更快StringBuf....

Java面试之String、StringBuffer和StringBuilder的区别和原理
文章 2022-02-17 来自:开发者社区

Java常见面试题:ThreadLocal和ThreadPool原理以及应用场景

ThreadLocal和ThreadPool原理以及应用场景 这两个事没有任何关系的:ThreadLocal类最大的特征是可以保存一个引用数据类型,并且这个引用数据类型保存的时候会自动保存一个currentThread()对象,这样的好处是可以避免引用传递的问题。 范例:传统的引用传递有些啰嗦 必须明确的给出一个引用类型。如果现在不想明确使用引用类型进行传递,那么能否实现呢? 这种Threa...

Java常见面试题:ThreadLocal和ThreadPool原理以及应用场景
文章 2022-02-17 来自:开发者社区

夯实Java基础系列3:一文搞懂String常见面试题,从基础到实战,更有原理分析和源码解析!

目录 string基础 Java String 类 创建字符串 StringDemo.java 文件代码: String基本用法 创建String对象的常用方法 String中常用的方法,用法如图所示,具体问度娘 三个方法的使用: lenth() substring() charAt() 字符串与byte数组间的相互转换 ==运算符和equals之间的区别: 字符串的不可变...

夯实Java基础系列3:一文搞懂String常见面试题,从基础到实战,更有原理分析和源码解析!
文章 2022-02-17 来自:开发者社区

突破Java面试(25)-Redis集群模式的原理

1 面试题 Redis集群模式的工作原理说一下?在集群模式下,key是如何寻址的?寻址都有哪些算法?了解一致性hash吗? 2 考点分析 Redis不断在发展-Redis cluster集群模式,可以做到在多台机器上,部署多个实例,每个实例存储一部分的数据,同时每个实例可以带上Redis从实例,自动确保说,如果Redis主实例挂了,会自动切换到redis从实例顶上来。 现在新版本,大家都是用Re....

突破Java面试(25)-Redis集群模式的原理
文章 2022-02-17 来自:开发者社区

突破Java面试(23-9) - 深入解析Redis哨兵底层原理

​# 0 Github 1 sdown和odown转换机制 两种失败状态 1.1 概念 sdown主观宕机一个哨兵自己觉得一个master宕机 odown客观宕机quorum数量的哨兵都觉得一个master宕机 1.2 达成条件 sdown一个哨兵ping一个master,超过is-master-down-after-milliseconds odown一个哨兵在指定时间内,收到了qu...

文章 2022-02-17 来自:开发者社区

突破Java面试(23-4) - 再深入Redis Replication的完整执行流程及原理

0 Github 1 复制的完整流程 slave node启动,仅仅保存master node的信息,包括master node的host和ip,但复制流程尚未开始master host和ip配置在 redis.conf 中的 slaveof slave node内部有个定时任务,每s 检查是否有新的master node要连接和复制,若发现,就跟master node建立socket网络连...

突破Java面试(23-4) - 再深入Redis Replication的完整执行流程及原理
文章 2022-02-14 来自:开发者社区

常见Java面试题之JVM加载class文件的原理机制

JVM加载class文件的原理机制JVM中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java中的类加载器是一个重要的Java运行时系统组件,它负责在运行时查找和装入类文件中的类。由于Java的跨平台性,经过编译的Java源程序并不是一个可执行程序,而是一个或多个类文件。当Java程序需要使用某个类时,JVM会确保这个类已经被加载、连接(验证、准备和解析)和初始化。类的加载....

文章 2022-01-10 来自:开发者社区

Java面试题 synchronized底层实现原理?它与lock相比有什么优缺点?

首先那些说看过synchronized源码的基本都是大聪明,synchronized根本点不进去,想弄懂它的实现原理,我们只能通过看编译好的字节码文件原理:基于对象的监视器(ObjectMonitor),我们在字节码文件里面可以看到,在同步方法执行前后,有两个指令,方法前monitorenter,方法后monitorexit; 与lock对比:1、synchronized不需要手动释放锁,loc....

文章 2020-02-25 来自:开发者社区

Java常见面试题:ArrayList实现原理

ArrayList实现原理 类集里面使用最多的就是ArrayList,使用ArrayList之前往往需要一些约定。ArrayList线性复杂度是1,可以直接通过索引进行访问。实际上这个过程和数组是非常相似的。 ArrayList在整个使用过程中如果想高效操作,那么最好设置一个数组的大小。 在个数固定的情况下,ArrayList里面避免了重复开辟空间的问题,所以当确定数据个数的时候就使用Arr...

Java常见面试题:ArrayList实现原理
文章 2019-05-31 来自:开发者社区

Java面试必问通信框架NIO,原理详解

NIO流与块通道与缓冲区缓冲区状态变量文件 NIO 实例选择器套接字 NIO 实例内存映射文件NIO与IO对比PathFilesNIO新的输入/输出 (NIO) 库是在 JDK 1.4 中引入的,弥补了原来的 I/O 的不足,提供了高速的、面向块的 I/O。 NIO核心组件: 通道(Channels)缓冲区(Buffers)选择器(Selectors)流与块I/O 与 NIO 最重要的区别是数据....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

Java开发者

Java开发者成长课堂,课程资料学习,实战案例解析,Java工程师必备词汇等你来~

+关注
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等