随笔分类 -  面试准备

摘要:Java的类加载机制是指在Java程序运行时,将类文件加载到内存中的一系列步骤。Java的类加载机制遵循着“按需加载”的原则,也就是说,只有在需要用到某个类的时候,才会将这个类的相关信息加载到内存中。这种“按需加载”的设计使得Java程序具备了很好的灵活性和效率。 Java的类加载器主要分为三类:启 阅读全文
posted @ 2024-01-15 16:32 Arbitrary233 阅读(40) 评论(0) 推荐(0) 编辑
摘要:对象的 hashCode 和 equals 方法特点 对于 hashCode 和 equals 方法,我们有以下三个结论: 结论 1:hashcode 相等,equals 不一定相等。结论 2:equals 相等,hashcode 一定相等。结论 3:hashcode 不相等,equals 一定不相 阅读全文
posted @ 2024-01-15 13:32 Arbitrary233 阅读(361) 评论(0) 推荐(0) 编辑
摘要:BeanFactory: 是Spring里面最底层的接口,提供了最简单的容器的功能,只提供了实例化对象和拿对象的功能; ApplicationContext: 应用上下文,继承BeanFactory接口,它是Spring的一各更高级的容器,提供了更多的有用的功能; 1) 国际化(MessageSou 阅读全文
posted @ 2022-06-08 14:18 Arbitrary233 阅读(67) 评论(0) 推荐(0) 编辑
摘要:问题 比如一张 id 自增的表中有 8 条数据,删除两条后,重启 MySQL 服务后,又插入一条数据,那么此时自增的 id 会从几开始呢? 说明 1. 如果表的引擎类型是 MyISAM,那么这条记录的 ID 就是 9。因为 MyISAM表会把自增主键的最大ID记录到数据文件里面,重启 MySQL 后 阅读全文
posted @ 2022-05-31 11:48 Arbitrary233 阅读(1425) 评论(1) 推荐(0) 编辑
摘要:1.简述 SpringBoot因为内置了tomcat或jetty服务器,不需要直接部署War文件,所以SpringBoot的程序起点是一个普通的主函数。 主函数如下: @SpringBootApplication public class DemoApplication { public stati 阅读全文
posted @ 2022-05-30 14:49 Arbitrary233 阅读(800) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/wujun2412/article/details/123392678 阅读全文
posted @ 2022-05-26 17:02 Arbitrary233 阅读(14) 评论(0) 推荐(0) 编辑
摘要:1.Exception和Error的区别 由上图可知Exception和Error都继承自Throwable,在Java中只有Throwable类型的实例才可以被抛出或捕获。 Error指正常情况下不太可能出现的情况,绝大部分的Error或导致程序崩溃,处于非正常的不可恢复的状态,如OutOfMem 阅读全文
posted @ 2022-05-26 10:45 Arbitrary233 阅读(154) 评论(0) 推荐(0) 编辑
摘要:一、类加载的过程 装载:通过累的全限定名获取二进制字节流,将二进制字节流转换成方法区中的运行时数据结构,在内存中生成Java.lang.class对象; 链接:执行下面的校验、准备和解析步骤,其中解析步骤是可以选择的; 校验:检查导入类或接口的二进制数据的正确性;(文件格式验证,元数据验证,字节码验 阅读全文
posted @ 2022-05-26 10:27 Arbitrary233 阅读(231) 评论(0) 推荐(0) 编辑
摘要:一、hashcode与equals的关系 hashCode():将任意一个对象根据指定的算法转为32位int equlas():比较两个对象是否相等 equals相等的两个对象,hashCode一定相等。hashCode相等的两个对象,equals不一定相等。 如果equals为true,hashc 阅读全文
posted @ 2022-05-25 11:28 Arbitrary233 阅读(183) 评论(0) 推荐(0) 编辑
摘要:1、ThreadLocal知识体系 本文还是不能免俗,在回答这个问题之前需要先和大家介绍一下ThreadLocal的知识,使大家对ThreadLocal有一个相对全面的认识。 ThreadLocal本地线程变量,主要用于解决数据访问的竞争,通常用于多租户、全链路压测、链路跟踪中保存线程上下文环境,在 阅读全文
posted @ 2022-05-25 09:50 Arbitrary233 阅读(263) 评论(0) 推荐(0) 编辑
摘要:一、浅拷贝深拷贝的理解 简单说拷贝就是将一个类中的属性拷贝到另一个中,对于BeanUtils.copyProperties来说,你必须保证属性名和类型是相同的,因为它是根据get和set方法来赋值的。 1.1、浅拷贝 浅拷贝可以理解为如果是引用类型,那么目标对象拷贝的只是源对象的地址,无论目标对象还 阅读全文
posted @ 2022-05-24 11:31 Arbitrary233 阅读(8150) 评论(1) 推荐(0) 编辑
摘要:一、sleep()和wait()的区别 1、相同点 sleep()和wait()都可以暂停线程的执行。 2、不同点 所在类不同 sleep()是Thread类的静态方法。 wait()是Object类的方法。 锁释放不同 sleep()是不释放锁的。wait()是释放锁的。 用途不同 sleep() 阅读全文
posted @ 2022-05-24 10:31 Arbitrary233 阅读(95) 评论(0) 推荐(0) 编辑
摘要:可参考硬核资料:https://blog.csdn.net/weixin_43184769/article/details/91126687 springboot中mybatis的mapper接口是如何生成代理对象的:https://www.jianshu.com/p/de4c41dccc89 一、 阅读全文
posted @ 2022-05-12 10:07 Arbitrary233 阅读(71) 评论(0) 推荐(0) 编辑
摘要:一、流程说明 1、 启动spring容器,也就是创建beanFactory(bean工厂), 一般用的是beanFactory的子类applicationcontext, applicationcontext比一般的beanFactory要多很多功能,比如aop、事件等。 通过application 阅读全文
posted @ 2022-04-29 12:00 Arbitrary233 阅读(152) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/l18848956739/article/details/106786430 阅读全文
posted @ 2022-04-07 09:06 Arbitrary233 阅读(25) 评论(0) 推荐(0) 编辑
摘要:一.synchronized的缺陷 synchronized是java中的一个关键字,也就是说是Java语言内置的特性。那么为什么会出现Lock呢? 如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的线程释放锁,而这里获取 阅读全文
posted @ 2022-03-17 17:01 Arbitrary233 阅读(180) 评论(0) 推荐(0) 编辑
摘要:一、结论 Executor, ExecutorService 都是接口,ExecutorService继承于Executor, Executors是工具类,他提供对ThreadPoolExecutor的封装产生ExecutorService的具体实现类。 二、Executor和ExecutorSer 阅读全文
posted @ 2022-03-17 15:57 Arbitrary233 阅读(201) 评论(0) 推荐(0) 编辑
摘要:一、并发容器的由来 在Java并发编程中,经常听到Java集合类,同步容器、并发容器,那么他们有哪些具体分类,以及各自之间的区别和优劣呢? 只有把这些梳理清楚了,你才能真正掌握在高并发的环境下,正确使用好并发容器,我们先从Java集合类,同步容器谈起。 二、什么是同步容器 Java的集合容器框架中, 阅读全文
posted @ 2022-03-17 15:26 Arbitrary233 阅读(310) 评论(0) 推荐(0) 编辑
摘要:一、 4个隔离级别 (1)读未提交:read uncommitted (2)读已提交:read committed (3)可重复读:repeatable read (4)串行化:serializable 脏读不可重复读幻读 Read uncommitted √ √ √ Read committed 阅读全文
posted @ 2022-03-07 10:06 Arbitrary233 阅读(258) 评论(0) 推荐(0) 编辑
摘要:先祭一张图,可以思考一下为什么? 一、介绍 equals() 的作用是用来判断两个对象是否相等。 hashCode() 的作用是获取哈希码,也称为散列码;它实际上是返回一个int整数。这个哈希码的作用是确定该对象在哈希表中的索引位置。 二、关系 我们以“类的用途”来将“hashCode() 和 eq 阅读全文
posted @ 2022-03-04 14:44 Arbitrary233 阅读(101) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示