面试题30天打卡-day06

news/2024/12/27 0:40:54/

1、什么是反射机制?说说反射机制的优缺点、应用场景?

反射机制:Java的反射机制是在运行状态,对于任意一个类,都能够动态的获得这个类的属性和方法;对于一个对象,都能动态的调用它当中的方法和属性。用于获取一个类的类变量,构造函数,方法,修饰符。

优点:

  • 可以动态的创建和使用对象(也是框架底层核心),使用灵活,没有反射机制,框架技术就失去底层支撑

缺点:

  1. 使用反射基本是解释执行,对执行速度有影响
  2. 破坏了Java的封装性,让私有变量可以被外部访问到,降低了类的安全性。

应用场景

  1. 动态代理:运行时加载需要的类,如果运行时不用该类,即使不存在该类,则不报错,降低了依赖性
  2. 使用JDBC连接数据库时使用class.forName()通过反射加载数据库的驱动程序
  3. Spring框架的IOC(动态加载管理Bean)创建对象以及AOP功能都和反射有联系

2、 常用的状态响应码

https://blog.csdn.net/qq_56098191/article/details/129137693

3、数据库索引是什么,有什么作用,什么场景适合使用索引?

数据库索引:索引是在数据表字段上添加的,提高查询效率,一个字段可以添加一个索引,多个字段联合起来也可以添加索引

索引的优点:

  1. 加快检索表中数据:默认是进行全表查询,查找到匹配的结果就加入结果集,若是这个字段有索引,则会先去索引列表中一次定位到行数,大大减少了匹配的次数,从而提高查询的效率。

适合使用索引的场景:

  1. 经常在where条件中作为查询条件的字段可以建立索引;
  2. 外键关联列可以建立索引;
  3. order by排序后面的字段可以建立索引;
  4. group by分组后的字段可以建立索引;

不适合使用索引的场景:

  1. 经常增、删、改的字段不适合建立索引,每次执行,索引需重新建立;
  2. 数据过滤性很差的字段不适合建立索引,如性别字段;
  3. 当表数据量过少的时候不太适合建立索引,因为索引占用存储空间;

http://www.ppmy.cn/news/47452.html

相关文章

几十个简要的游戏案例分析

文章目录 一、 介绍二、 影响游戏体验的因素三、 游戏能爆火的因素1.影响游戏爆火因素的排名2.玩游戏的两种经典心理3.经典案例分析Qq农场植物大战僵尸水果忍者召唤神龙羊了个羊 4.游戏公司可借鉴的经验 四、 几十款游戏的多方面分析FC红白游戏机十二人街霸热血高校系列魂斗罗系…

搭建系统。

前言:为了应对大量简单页面的生产需求而设计的一种工具型产品就是搭建系统,它的目标非常明确,就是快速生产大量的页面。 这节我们来了解搭建系统 搭建系统的设计 几种常见的搭建系统的设计 第一种,是模板化搭建,由前…

二极管反向恢复过程详细解析

二极管反向恢复过程,现代脉冲电路中大量使用晶体管或二极管作为开关, 或者使用主要是由它们构成的逻辑集成电路。而作为开关应用的二极管主要是利用了它的通(电阻很小)、断(电阻很大) 特性, 即二极管对正向及反向电流表现出的开关作用。二极管和一般开关的不同在于,…

ThreadLocal InheritableThreadLocal TransmittableThreadLocal的使用以及原理

ThreadLocal 每个线程向ThreadLocal设置值&#xff0c;再取值&#xff0c;实现线程之间的隔离 public class ThreadLocalCase1 {private static ThreadLocal<Integer> threadLocal new ThreadLocal<>();public static void main(String[] args) {Random random …

JavaScript的基础语法学习

文章目录 一、JavaScript let 和 const二、JavaScript JSON三、javascript:void(0) 含义四、JavaScript 异步编程总结 一、JavaScript let 和 const let 声明的变量只在 let 命令所在的代码块内有效。 const 声明一个只读的常量&#xff0c;一旦声明&#xff0c;常量的值就不…

APIs -- DOM正则表达式

1. 介绍 正则表达式(Regular Expression)是用于匹配字符串中字符组合的模式。在JavaScript中&#xff0c;正则表达式也是对象通常用来查找、替换那些符合正则表达式的文本&#xff0c;许多语言都支持正则表达式。正则表达式在JavaScript中的使用场景: 例如验证表单:用户名表单…

MyBatis --- 缓存、逆向工程、分页插件

一、MyBatis的缓存 1.1、MyBatis的一级缓存 一级缓存是SqlSession级别的&#xff0c;通过同一个SqlSession查询的数据会被缓存&#xff0c;下次查询相同的数据&#xff0c;就会从缓存中直接获取&#xff0c;不会从数据库重新访问 使一级缓存失效的四种情况&#xff1a; 1、…

ElasticSearch——详解主从模式,以及主节点的选取算法(一)

详解主从模式&#xff0c;以及主节点的选取算法 Discovery模块负责发现集群中的节点&#xff0c;以及选择主节点。 ES支持多种不同Discovery类型选择&#xff0c;内置的实现称为Zen Discovery&#xff0c;其他的包括公有云平台亚马逊的EC2、谷歌的GCE等。本文讨论内置的Zen Di…