面试官常问的Java面试题分享
- 作者想要说的话
-
- 1.什么是J2EE技术?
- 2.JDK 和 JRE 有什么区别?
- 3.final 在 java 中有什么作用?
- 4.Java中八大基本类型有哪些?
- 5.java中操作字符串都有哪些类?
- 6.String 类的常用方法都有那些?
- 7.抽象类必须要有抽象方法吗?
- 8.普通类和抽象类有哪些区别?
- 9.java 中 IO 流分为几种?
- 10.BIO、NIO、AIO 有什么区别?
- 11.List、Set、Map 之间的区别是什么?
- 12.迭代器 Iterator 是什么?
- 13.并行和并发有什么区别?
- 14.线程和进程的区别?
- 15.线程有哪些状态?
- 16.什么是死锁?
- 17.说一下 atomic 的原理?
- 18.动态代理是什么?有哪些应用?
- 19.为什么要使用克隆?
- 20.深拷贝和浅拷贝区别是什么?
- 21.jsp 和 servlet 有什么区别?
- 22. jsp 的 4 种作用域?
- 23.session 和 cookie 有什么区别?
- 24.如何避免 sql 注入?
- 25.什么是 XSS 攻击,如何避免?
- 26.简述 tcp 和 udp的区别?
- 27..get 和 post 请求有哪些区别?
- 28.说一下你熟悉的设计模式?
- 29.什么是 spring?spring有何优点?
- 30.spring 有哪些主要模块?
- 31.spring 常用的注入方式有哪些?
- 32.spring mvc 运行流程?
- 33.什么是springmvc?
- 34.什么是springboot?他有什么优点?
- 35..什么是springCloud?
- 36.Spring、SpringBoot、SpringCloud有什么区别?
- 37.@Autowired 的作用是什么?
- 38.spring cloud 的核心组件有哪些?
- 39.mybatis 中 #{}和 ${}的区别是什么?
- 40.mybatis 有几种分页方式?
- 41.mybatis 的一级缓存和二级缓存?
- 42.如何做 mysql 的性能优化?
- 43.redis 是什么?都有哪些使用场景?
- 44.redis 有哪些功能?
作者想要说的话
对于为什么要把面试题分享出来是以为有一些刚步入社会的小白程序员他对与企业问的面试内容不够熟悉,作者也是其中之一,所以我把我遇到的一些面试官常问的面试题总结了起来,有助于大家复习~
1.什么是J2EE技术?
J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要包括可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
2.JDK 和 JRE 有什么区别?
JRE( Java Runtime Environment)是Java 运行时环境
JDK是Java 开发工具包
3.final 在 java 中有什么作用?
在Java中final可以修饰类、变量、方法
4.Java中八大基本类型有哪些?
1、字符类型: char
2、基本整型:byte,short,int,long
3、浮点型:float,double
4 、布尔类型:boolean
5.java中操作字符串都有哪些类?
String、StringBuffer、StringBuilder
6.String 类的常用方法都有那些?
字符名称 | 作用 |
---|---|
indexOf(String str) | 查找指定的字符在当前字符窜第一次出现的索引值 |
charAt(int index) | 返回指定索引处得字符 |
replace(char oldChar,char newChar): | 它是通过用 newChar 替换此字符串中出现的所有 oldChar |
trim() | 去除字符串两端的空白 |
split() | 分割字符串 返回分割后的字符串数组 |
getBytes() | 返回字符串的byte类型数组 |
length() | 返回字符串的长度 |
toLowerCase() | 字符串转小写 |
toUpperCase() | 字符串转大写 |
substring() | 截取字符串 |
equals() | 字符串比较 |
7.抽象类必须要有抽象方法吗?
抽象类可以没有抽象方法,但是如果你的一个类已经声明成了抽象类,即使这个类中没有抽象方法,它也不能再实例化,即不能直接构造一个该类的对象。 如果一个类中有了一个抽象方法,那么这个类必须声明为抽象类,否则编译通不过。
8.普通类和抽象类有哪些区别?
抽象类不能被实例化
抽象类可以有抽象方法,抽象方法只需申明,无需实现
含有抽象方法的类必须申明为抽象类
抽象类的子类必须实现抽象类中所有抽象方法,否则这个子类也是抽象类
抽象方法不能被声明为静态
抽象方法不能用 private 修饰
抽象方法不能用 final 修饰
9.java 中 IO 流分为几种?
Java中的流分为两种,一种是字节流,另一种是字符流
10.BIO、NIO、AIO 有什么区别?
BIO是一个连接一个线程。 NIO是一个请求一个线程。 AIO是一个有效请求一个线程。
BIO:同步并阻塞
NIO:同步非阻塞
AIO:异步非阻塞
11.List、Set、Map 之间的区别是什么?
List:有序集合
Set:不重复集合,LinkedHashSet按照插入排序,SortedSet可排序,HashSet无序
Map:键值对集合
(1)元素的重复性:
List集合中可以出现重复元素
Set集合中不可以出现重复元素,在向Set集合中存储多个重复的元素时会出现覆盖
Map集合采用key-value的形式存储,在Map中不能出现重复的Key键,但可以出现多个不同的Key对应相同的Value
(2)元素的有序性:
List集合及其所有的实现类都确保了元素的有序性
Set集合中的元素是无序的,但是某些Set集合通过特定的形式对其中的元素进行排序,如LinkedHashSet
Map和Set一样对元