没有合适的资源?快使用搜索试试~ 我知道了~
一、基础篇 1、 Java类型是什么? Java8大基本数据类型是什么? byte、short 、int、long、float、double、boolean、char 2、什么是装箱?什么是拆箱? 装箱就是 自动将基本数据类型转换为包装器类型 拆箱就是 自动将包装器类型转换为基本数据类型 3、== 和 equals 方法究竟有什么区别? ==是判断俩个值的结果是否相等, 或者判断俩个内存地址是否相同 equals是判断值内容是否相等,不比较内存地址 4、为什么重写equals方法后,一定要重写hashcode? 因为只重写equals,不重写hashcode的话,就算比较这俩个值的内容相等,
资源推荐
资源详情
资源评论
超全超全Java面试题(精简版)持续更新面试题(精简版)持续更新….
一、基础篇一、基础篇
1、、 Java类型是什么类型是什么? Java8大基本数据类型是什么大基本数据类型是什么?
byte、short 、int、long、float、double、boolean、char
2、、什么是装箱什么是装箱?什么是拆箱什么是拆箱?
装箱就是 自动将基本数据类型转换为包装器类型
拆箱就是 自动将包装器类型转换为基本数据类型
3、、== 和和 equals 方法究竟有什么区别?方法究竟有什么区别?
==是判断俩个值的结果是否相等, 或者判断俩个内存地址是否相同
equals是判断值内容是否相等,不比较内存地址
4、为什么重写、为什么重写equals方法后方法后,一定要重写一定要重写hashcode??
因为只重写equals,不重写hashcode的话,就算比较这俩个值的内容相等, HashCode也不一定相等
5、、final, finally, finalize 的区别是什么的区别是什么?
final 它是用于声明属性不可变,方法不可被重写,类不可被继承
finally 它是写在try{}cache{}后面的,表示有无异常都会执行
finalize 是Object 类的一个方法, 当垃圾回收机制不定时去回收垃圾的时候,就会调用这个方法
6、、静态变量和实例变量的区别?静态变量和实例变量的区别?
静态变量可以直接用类名.点来引用, 实例变量必须创建对象才能使用
7、、static修饰的方法能否调用非修饰的方法能否调用非static方法的?方法的?
static方法不能访问非static方法, 非static方法可以访问static方法
8、、面向对象的三种状态面向对象的三种状态?
封装、继承、多态
9、、重载与重写区别?重载与重写区别?
重载是指同一类中, 方法名相同,参数列表不同,重写是指子类重写父类的方法
10、、接口与抽象类的区别?接口与抽象类的区别?
接口的关键字是interface, 抽象类的关键字是abstract
接口和抽象类都不能被实例化(new)
接口中不能有私有成员(private), 抽象类中可以有私有成员
接口中定义成员都是public static final 修饰的, 抽象类没有
接口中不能有静态方法和构造函数, 抽象类中可以有静态方法和构造函数
11、、object类常用的方法有哪些类常用的方法有哪些?你用过的你用过的object类的直接子类有哪些类的直接子类有哪些?
clone方法、getClass方法、toString方法、finalize方法、equals方法、hashCode方法、wait方法、notify方法、notifyAll方法
12、数组有没有、数组有没有length() 这个方法这个方法? String有没有有没有length() 这个方法?这个方法?
数组没有length() 这个方法,有length的属性,String有length() 这个方法。
13、、Java序列化的作用是什么序列化的作用是什么?序列化的协议有哪些序列化的协议有哪些?
序列化是将一个对象序列化到硬盘中,反序列化是从硬盘中反序列化对象;json、hessian
14、、Error 和和Exception的区别是什么的区别是什么?
Error和Exception都是继承Throwable类, Error是java运行中不可预料异常, Exception是指java程序运行中可以预料的异常情况
15、、运行时异常和一般异常有什么区别运行时异常和一般异常有什么区别?
运行时异常就是在代码运行时报错,一般异常就是编译时报错
16、、 JDK 和和 JRE 有什么区别?有什么区别?
JDK 其实包含了 JRE,如果需要运行 java 程序,只需安装 JRE 就可以了,如果你需要编写 java 程序,需要安装 JDK
17、、String 类的常用方法都有那些?类的常用方法都有那些?
indexOf()、charAt()、replace()、trim()、split()、getBytes()、length()、toLowerCase()、toUpperCase()、substring()、
equals()
18、抽象类能使用、抽象类能使用 final 修饰吗?修饰吗?
不能,定义抽象类就是让其他类继承的,如果定义为 final 该类就不能被继承,不能修饰抽象类
19、如何实现数组和、如何实现数组和 List 之间的转换?之间的转换?
List转换成为数组:调用ArrayList的toArray方法。
数组转换成为List:调用Arrays的asList方法。
20、迭代器、迭代器 Iterator 是什么?是什么?
迭代器是一种设计模式,是一个对象,它可以遍历并选择序列中的对象,因为创建它的代价小所以迭代器通常被称为“轻量
级”对象。
21、什么是哈希表、什么是哈希表?
哈希表由数组+链表进行组成的
22、单向链表和双向链表的区别是什么、单向链表和双向链表的区别是什么?
单向链表是元素尾存了下一个元素的地址,双向链表是头和尾都存在上一个和下一个元素的地址;
23、、List、、Map、、Set 三个接口三个接口,存取元素时存取元素时,各有什么特点各有什么特点?
list: 有序、重复的 set: 无序 不可以重复
map:是一种以键值对形式存储的集合,key不能重复,value可以重复
24、列举几个常用的、列举几个常用的java设计模式设计模式
单例模式、简单工厂、工厂方法、抽象工厂、建造者模式、原型模式
25、懒汉式与饿汉式区别?、懒汉式与饿汉式区别?
饿汉就是类一旦加载,就初始化完成,而懒汉就是只有当调用的时候,才会去初始化。
二、二、JavaWeb
1、、doGet和和doPost的区别的区别?
doGet和doPost都是接受用户请求的方法,doGet处理get请求,doPost处理post请求,doGet用于地址栏提交,doPost用于表
单提交,get请求提交的数据会在地址栏显示,post不显示,所以post比get安全.
2、、Jsp的重定向和转发有什么区别的重定向和转发有什么区别? 转发是一次请求一次响应转发是一次请求一次响应,重定向两次请求和两次响应重定向两次请求和两次响应
重定向时可以转发到项目以外的任何网址,转发只能在当前项目里转发
重定向的地址栏会发生变化,转发的地址栏不变
重定向路径需要加工程名,转发的路径不需要加工程名
重定向不可以往页面带参数它会导致request对象信息丢失,转发可以往页面带参数
3、、Jsp和和servlet的区别的区别?
jsp在最后会编译成servlet, Jsp 本质上是servlet,用jsp实现的页面用servlet也能实现。
4、、Jsp的九大内置对象的九大内置对象
pageContext、Request、Session、Application、Out、Response、Config、Page、Exception
5、、Jsp的三大指令的三大指令
Page、Include、Taglib
6、、Jsp的七大动作的七大动作
Forward、Param、Include、Plugin、useBean、setProperty、getProperty
7、、session和和cookie的区别的区别?
cookie和session都是会话跟踪技术
cookie存储数据是存在客户端的,它保存的数据有大小个数有限制,cookie不是很安全,别人可以通过拦截或者本地文件找到
你cookie进行攻击
session存储数据是在服务端的,默认失效时间是30分钟,保存的数据没有大小限制;如果访问次数过多会增加服务器的压力,
考虑到性能可以使用cookie
将登录信息等重要信息存放为将登录信息等重要信息存放为session,其他需要保留的信息放在,其他需要保留的信息放在cookie中中
8、、Tomcat默认是多少个线程?默认是多少个线程? 200个个
9、、TCP三次握手过程三次握手过程?
首先发起HTTP请求,响应HTTP请求并得到HTML代码,然后浏览器解析HTML代码对页面进行渲染呈现给用户;
10、、DNS域名解析过程域名解析过程?
先查找本地的host文件是否有配置域名解析,本地没有的情况下,就去运营商查询;
11、、Http和和Https的区别的区别?
Https使用的是SSL安全通信线路+认证+完整性保护,传统的Http协议不安全;
12、动态网站与静态网站区别、动态网站与静态网站区别
在浏览器中打开一个网站,点击鼠标右键查看源码,多次请求后如果源码不产生变化就是静态网站,变化就是动态网站;
13、动静分离与前后分离区别、动静分离与前后分离区别
动静分离是将静态资源和动态资源存放在不同服务器中,前后分离是将前端和后台分离,前端通过api调用后台接口;
14、什么是网站动静分离架构模式、什么是网站动静分离架构模式?
动静分离架构模式就是将静态资源和动态资源分开到不同的服务器部署。
静态资源: css、 img、视频、js的等;
动态资源: api接口后端代码;
15、、Web前端有哪些优化方案?前端有哪些优化方案?
网站框架实行动静分离;
在访问静态资源时在Url后缀加上时间戳,防止访问资源的与浏览器本地缓存资源存在冲突;
页面减少HTTP请求,合并静态资源(如js或者css)并进行压缩;
使用CDN内容分发,缓存静态资源,让用户访问最近的服务器,减少宽带之间的传输;
三、线程相关三、线程相关
1、线程的、线程的6个状态是什么个状态是什么?
新建、就绪、阻塞、等待、计时等待、超时
2、、sleep()和和 wait()有什么区别有什么区别?
sleep是让当前线程指定休眠时间,然后继续工作;wait是让当前线程等待,直到有线程通知才会重新工作。
3、、JMM是什么,你谈谈是什么,你谈谈?
是java内存模型
剩余13页未读,继续阅读
资源评论
weixin_38514523
- 粉丝: 8
- 资源: 939
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功