![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java面试
文章平均质量分 93
Java相关面试问题
Tigirs
Tigirs's blog
展开
-
Java类和实例的初始化、方法的参数传递机制、递归与迭代、成员变量和局部变量、Spring(Bean作用域、支持的事务传播属性和事务隔离级别)、Spring MVC(解决乱码、工作流程)
文章目录Java类、实例的初始化1. 类初始化2. 实例初始化方法的参数传递机制Java类、实例的初始化1. 类初始化规则:一个类要创建实例必须先初始化该类;main方法所在的类总是要先加载和初始化;子类要初始化必须先初始化父类;一个类的初始化就是执行 <clinit> 方法,该方法由 静类变量显示赋值代码 和 静态代码块 组成,这两部分的执行顺序是:谁在前面谁先执行;该方法只执行一次;代码演示:父类public class Father { // 父类静态变量赋原创 2021-01-22 11:14:41 · 391 阅读 · 0 评论 -
【Java面试高频问题】MySQL相关(存储引擎、联表查询、索引、ACID原则、varchar和char区别、explain关键字)
文章目录MySQL1. 存储引擎2. 联表查询(JOIN)3. 索引MySQL1. 存储引擎InnoDB和MyISAM区别事务:InnoDB支持事务,MyISAM不支持;InnoDB支持外键,MyISAM不支持;mysql-5.1版本之前默认引擎是MyISAM,之后是InnoDB;MyISAM适合查询以及插入为主的应用,InnoDB适合频繁修改以及涉及到安全性较高的应用;MyISAM表锁,操作一行也会锁整张表不适合高并发;InnoDB行锁,操作一行锁一行适合高并发;缓存:MyISA原创 2021-01-22 11:10:12 · 146 阅读 · 1 评论 -
【Java面试高频问题】(多线程、并发、JUC、synchronized、volatile深入理解、CAS问题)
进程和线程进程:进程是正在运行的程序的实例,是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。进程和程序的区别:程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态的概念。线程:是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一个进程中可以并发多个线程,每条线程并行执行不同的任务。Java默原创 2021-01-22 11:08:31 · 149 阅读 · 0 评论 -
【Java面试高频问题】JVM基础知识
文章目录JVM一、概述二、JVM类加载器&双亲委派机制三、沙箱安全机制四、native关键字&方法区内存五、栈六、堆七、GC(垃圾回收机制)JVM一、概述JVM和操作系统的关系:JVM体系结构:二、JVM类加载器&双亲委派机制作用:加载class文件public class Student { public static void main(String[] args) { // 实例化 Student stude原创 2021-01-22 11:07:16 · 145 阅读 · 2 评论 -
【Java面试高频问题】Java数据结构和算法基础知识汇总
文章目录Java数据结构和算法基础知识一、Java数据结构1. 数组2. 栈3. 堆4. 队列5. 链表6. 树7. 哈希表二、Java算法知识1. 冒泡排序2. 选择排序3. 直接插入排序4. 快速排序5. 归并排序Java数据结构和算法基础知识一、Java数据结构1. 数组2. 栈3. 堆4. 队列5. 链表6. 树7. 哈希表二、Java算法知识1. 冒泡排序2. 选择排序3. 直接插入排序4. 快速排序5. 归并排序...原创 2021-01-22 11:06:38 · 603 阅读 · 0 评论 -
【Java面试高频问题】MyBatis相关(#{}和${}的区别、一二级缓存、自定义缓存、属性名和字段名不一致、分页)
什么是MyBatis?MyBatis是一流的持久性框架,支持自定义SQL,存储过程和高级映射。MyBatis消除了几乎所有的JDBC代码以及参数的手动设置和结果检索。MyBatis可以使用简单的XML或注释进行配置,并将图元,映射接口和Java POJO(普通的旧Java对象)映射到数据库记录。#{}和${}#{}使用#{}意味着使用的预编译的语句,即在使用jdbc时的preparedStatement,sql语句中如果存在参数则会使用?作占位符,我们知道这种方式可以防止sql注入,例:s原创 2021-01-22 11:04:00 · 263 阅读 · 0 评论 -
【Java面试高频问题】Java集合相关(collection\map接口、HashMap\ConcurrentHashMap)
文章目录Collection接口一、Set接口二、List接口Map接口一、HashMap二、HashTable三、LinkedHashMap四 、TreeMap五、ConcurrentHashMapCollection接口一、Set接口Set(不可重复)HashSet底层是HashMap,不安全,无序,允许存空,数组长度默认16,2倍扩容;public HashSet() { map = new HashMap<>();}HashSet的add方法:不可重复原创 2021-01-22 11:00:01 · 172 阅读 · 0 评论