八股合集
文章平均质量分 65
豆恭梓
在读计算机研究生一枚^_^
展开
-
MySQl有哪些索引(种类)?索引特点?为什么要使用索引?
普通索引:仅加速查询唯一索引:加速查询 + 列值唯一(可以有null)主键索引:加速查询 + 列值唯一(不可以有null)+ 表中只有一个组合索引:多列值组成一个索引,专门用于组合搜索,其效率大于索引合并全文索引:对文本的内容进行分词,进行搜索索引合并:使用多个单列索引组合搜索覆盖索引:select的数据列只用从索引中就能够取得,不必读取数据行,换句话说查询列要被所建的索引覆盖聚簇索引:表数据是和主键一起存储的,主键索引的叶结点存储行数据(包含了主键值),二级索引的叶结点存储行的主键值。使用原创 2023-10-18 21:44:24 · 402 阅读 · 0 评论 -
某金融科技公司Java一面
首先定义一个注解类型,使用@interface关键字。注解类型通常包括注解的名称、元素(也就是注解的属性),以及默认值。原创 2023-10-16 14:40:50 · 215 阅读 · 0 评论 -
某快递公司Java一面
优先级队列的实现:优先级队列是一种数据结构,支持。原创 2023-10-11 17:22:35 · 219 阅读 · 0 评论 -
某游戏公司Java面试八股文总结
时通过 一个标识 表示类中。原创 2023-10-11 11:57:12 · 337 阅读 · 0 评论 -
计算机网络:三次握手与四次挥手
(服务端等客户端回复是否收到呢,不收到的话,服务端不知道客户端是不是挂掉了还是咋回事呢,所以服务端不敢关闭自己的接收能力,于是第四次就来了。实质上其实就是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号,交换TCP窗口大小信息。分手:此时如果客户端收到了服务端发送完的信息之后,就发送ACK = 1,告诉服务端,客户端已经收到了你的信息。(服务端先回应给客户端一声,我知道了,但服务端的发送数据能力即将等待关闭,于是接下来第三次就来了。分手:此时服务端向客户端把所有的数据发送完了,然后。原创 2023-09-14 15:15:52 · 854 阅读 · 0 评论 -
TCP和UDP的区别
7、UDP是面向报文的,发送方的UDP对应用层交下来的报文,不合并,不拆分,只是在其上面加上首部后就交给了下面的网络层,论应用层交给UDP多长的报文,它统统发送,一次发送一个。UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等)也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;),等到可以发送的时候就发送,不能发送就等着TCP会根据当前网络的拥塞状态来确定每个报文段的大小。UDP支持一对一,一对多,多对一和多对多的交互通信。原创 2023-09-09 15:29:03 · 334 阅读 · 0 评论 -
什么是TCP粘包/拆包?发生的原因?如何解决
3.在数据包中添加消息头:发送端在每个数据包中添加一个消息头,消息头中包含数据长度等信息,接收端就可以根据消息头来判断每个数据包的长度,从而解决粘包/拆包的问题。4.使用消息结束符:发送端在每个数据包的末尾加上一个特殊的消息结束符,接收端就可以根据这个结束符来判断每个数据包的边界,从而解决粘包/拆包的问题。1.消息定长:发送端发送的每个消息都是固定长度的,接收端每次接收到固定长度的数据就进行一次处理,这样就可以保证每次接收的数据都是完整的。造成TCP粘包/拆包的。原创 2023-09-09 15:04:57 · 377 阅读 · 0 评论 -
Spring--BeanFactory和FactoryBean区别
一个实现了 FactoryBean 接口的类必须实现 getObject 方法,用于创建和返回一个特定类型的 Bean。它是 Spring 框架中最基本的容器,但相对于 FactoryBean,它更注重对象的整体管理和控制。BeanFactory 和 FactoryBean 是 Spring 框架中两个不同的概念,它们在对象的管理和创建过程中具有不同的角色和功能。它是 Spring IoC(Inversion of Control,控制反转)的基础,实现了对象的生命周期管理、依赖注入、延迟加载等特性。原创 2023-08-11 17:56:38 · 233 阅读 · 0 评论 -
常见Java面试八股(基础篇)
难度系数:⭐基本数据类型,如 int,float,double,boolean,char,byte,不具备对象的特征,不能调用方法。 装箱:将基本类型转换成包装类对象 拆箱:将包装类对象转换成基本类型的值java 为什么要引入自动装箱和拆箱的功能?主要是用于 java 集合中,Listlist=new ArrayList();list 集合如果要放整数的话,只能放对象,不能放基本类型,因此需要将整数自动装箱成对象。原创 2023-08-08 12:43:40 · 85 阅读 · 0 评论 -
线程池执行流程
ThreadPoolExecutor介绍。原创 2023-08-02 15:58:07 · 72 阅读 · 0 评论 -
spring的ApplicationContextAware接口
当一个 bean 实现了 ApplicationContextAware 接口并在 Spring 容器中被实例化时,Spring 容器会自动调用该 bean 的 setApplicationContext 方法,并将应用程序上下文作为参数传递进来。在 Spring 框架中,有一个名为 ApplicationContextAware 的接口,它允许 Spring bean 在初始化过程中意识到它们所属的 ApplicationContext(应用程序上下文)。原创 2023-07-28 17:56:01 · 174 阅读 · 0 评论 -
Java中有哪几种引用类型?
在Java中,除了强引用(Strong Reference)外,还有三种其他类型的引用:软引用(Soft Reference)、弱引用(Weak Reference)和虚引用(Phantom Reference)。原创 2023-07-26 21:55:34 · 62 阅读 · 0 评论 -
聊一聊IOC和AOP、DI(或者说有什么好处)
spring 使用 javaBean 对象的 set 方法或者带参数的构造方法为我们在创建所需对象时将其属性自动设置所需要的值的过程,就是依赖注入的思想。控制反转,将创建对象的权利交给容器概念类的回答就不提了,本专栏里的其他文章有讲到。面向切面编程,对目标方法做增强,为原有的代码提供一些附加的能力。建立注解包annotations:放自定义注解。切面配置类:(建立配置包:config)原创 2023-07-19 22:29:53 · 109 阅读 · 1 评论 -
Java的Object类下有哪些方法
Object 类是 Java 中所有类的根类,它定义了一些基本的方法和行为,其他类都直接或间接地继承了 Object 类。这些方法是 Object 类的一部分,可以在所有的 Java 类中直接使用。但是,需要注意的是,有些方法的行为可以在子类中进行重写,以满足具体类的需求。原创 2023-07-13 17:02:46 · 64 阅读 · 0 评论 -
Java类和对象的生命周期
需要注意的是,Java的垃圾回收机制负责管理对象的销毁,程序员通常无需手动销毁对象。垃圾回收器会自动检测不再被引用的对象,并回收其占用的内存空间。原创 2023-07-13 14:12:56 · 87 阅读 · 0 评论 -
简单说下服务雪崩、熔断、降级、限流
无法正常响应请求。这种连锁反应会导致整个系统的性能下降,甚至崩溃,类似雪崩效应,因此被称为服务雪崩。服务雪崩可能是由于多个服务之间的紧密依赖关系、故障传递、资源耗尽等原因引起的。原创 2023-07-08 10:43:38 · 155 阅读 · 0 评论 -
Java面试题:注解和反射的运行原理
注解和反射是 Java 中两个重要的特性,它们在运行时对类和对象进行元数据的处理和操作。原创 2023-07-07 11:17:12 · 109 阅读 · 0 评论 -
面试题:如何创建线程池、ThreadPoolExecutor的参数有哪些,参数的作用
除了上述方法之外,也可以通过 ThreadPoolExecutor 类的构造函数自定义创建线程池。这里的参数根据具体需求进行配置,可以设置线程池的核心线程数、最大线程数、线程空闲时间、工作队列等。需要注意的是,在使用完线程池后,应该调用 executor.shutdown() 方法来优雅地关闭线程池,释放资源。原创 2023-07-07 10:53:27 · 116 阅读 · 0 评论 -
面试题:解释一下synchronized的轻量级锁,锁膨胀、自旋优化、偏向锁
在Java中,synchronized 关键字用于实现线程同步和互斥访问共享资源。当多个线程尝试访问被synchronized修饰的代码块时,会对共享资源进行加锁,以保证线程安全。在JVM中,synchronized关键字的实现涉及不同层次的锁机制,包括轻量级锁、锁膨胀、自旋优化和偏向锁。原创 2023-07-07 10:44:04 · 55 阅读 · 0 评论 -
spring工程的启动流程?bean的生命周期?提供哪些扩展点?管理事务?解决循环依赖问题的?事务传播行为有哪些?
然后,它会创建Bean的实例并放入第二级缓存,但在实例化之前,会解析依赖关系并注入尚未初始化的Bean引用。这意味着在创建Bean的过程中,即使发生循环依赖,也能够获取到尚未初始化的Bean实例的引用,从而解决了循环依赖的问题。NESTED:如果当前存在事务,则在嵌套事务中执行,如果不存在,则执行与REQUIRED相同的行为。SUPPORTS:如果当前存在事务,则加入该事务,如果不存在,则以非事务方式执行。REQUIRED:如果当前存在事务,则加入该事务,如果不存在,则新建一个事务。原创 2023-07-04 10:45:42 · 446 阅读 · 0 评论