---
title: Java 面试题
date: 9999-09-09 09:09:09
tags:
---
## !!! TODO
* [ ] 把下面这些问题进行整理
## (如何贡献)How to Contribute
- (Fork 此仓库))Fork this repository
- 建立以下某个问题的 markdown 文件 文件头需要添加如下格式以便生成 静态博客
```
---
title: 什么是 ACID
date: 2018-08-27 17:20:14
tags:
---
```
排版规范可见 [中文文案排版指北](https://github.com/InterviewTips/Teamwork-specification/blob/master/%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%88%E6%8E%92%E7%89%88%E6%8C%87%E5%8C%97.md)
- 问题 markdown 文件编写完成后在 README.md 文件中加入问题超链接
- Pull request
---
## 基本概念
- [操作系统中 heap 和 stack 的区别](./操作系统中%20heap%20和%20stack%20的区别.md)
- 什么是基于注解的切面实现
- 什么是 对象/关系 映射集成模块
- 什么是 Java 的反射机制
- [什么是 ACID](./ACID.md)
- BS 与 CS 的联系与区别
- Cookie 和 Session 的区别
- fail-fast 与 fail-safe 机制有什么区别
- [get 和 post 请求的区别](./get%20和%20post%20请求的区别.md)
- [Interface 与 abstract 类的区别](./Interface%20与%20abstract%20类的区别.md)
- IOC的优点是什么
- IO 和 NIO的区别,NIO优点
- Java 8 / Java 7 为我们提供了什么新功能
- 什么是竞态条件? 举个例子说明。
- [JRE、JDK、JVM 及 JIT 之间有什么不同](./JRE、JDK、JVM%20及%20JIT%20之间有什么不同.md)
- MVC的各个部分都有那些技术来实现?如何实现?
- RPC 通信和 RMI 区别
- 什么是 Web Service(Web服务)
- JSWDL开发包的介绍。JAXP、JAXM的解释。SOAP、UDDI,WSDL解释。
- WEB容器主要有哪些功能? 并请列出一些常见的WEB容器名字。
- 一个”.java”源文件中是否可以包含多个类(不是内部类)?有什么限制
- 简单说说你了解的类加载器。是否实现过类加载器
- 解释一下什么叫AOP(面向切面编程)
- 请简述 Servlet 的生命周期及其相关的方法
- 请简述一下 Ajax 的原理及实现步骤
- 简单描述Struts的主要功能
- 什么是 N 层架构
- 什么是CORBA?用途是什么
- 什么是Java虚拟机?为什么Java被称作是"平台无关的编程语言"
- 什么是正则表达式?用途是什么?哪个包使用正则表达式来实现模式匹配
- 什么是懒加载(Lazy Loading)
- 什么是尾递归,为什么需要尾递归
- 什么是控制反转(Inversion of Control)与依赖注入(Dependency Injection)
## 关键字
**finalize**
- 什么是finalize()方法
1. finalize()方法什么时候被调用
2. 析构函数(finalization)的目的是什么
3. final 和 finalize 的区别
4. final
- final关键字有哪些用法
1. final 与 static 关键字可以用于哪里?它们的作用是什么
2. final, finally, finalize的区别
3. final、finalize 和 finally 的不同之处?
- 能否在运行时向 static final 类型的赋值
1. 使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变
2. 一个类被声明为final类型,表示了什么意思
3. throws, throw, try, catch, finally分别代表什么意义
[**Java 有几种修饰符?分别用来修饰什么**](./Java%20有几种修饰符%20分别用来修饰什么.md)
**volatile**
- volatile 修饰符的有过什么实践
- volatile 变量是什么?volatile 变量和 atomic 变量有什么不同
- volatile 类型变量提供什么保证?能使得一个非原子操作变成原子操作吗
- 能创建 volatile 数组吗?
[**transient变量有什么特点**](./transient变量有什么特点.md)
**super什么时候使用**
**public static void 写成 static public void会怎样**
**说明一下public static void main(String args[])这段声明里每个关键字的作用**
**请说出作用域 public , private, protected, 以及不写时的区别**
**sizeof 是 Java 的关键字吗**
**static**
- static class 与 non static class的区别
- static 关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法
- 静态类型有什么特点
- main() 方法为什么必须是静态的?能不能声明 main() 方法为非静态
- 是否可以从一个静态(static)方法内部发出对非静态(non-static)方法的调用
- 静态变量在什么时候加载?编译期还是运行期?静态代码块加载的时机呢
- 成员方法是否可以访问静态变量?为什么静态方法不能访问成员变量
**switch**
- switch 语句中的表达式可以是什么类型数据
- switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上
- [while 循环和 do-while 循环有什么不同](./while%20循环和%20do-while%20循环有什么不同.md)
## 操作符
- [& 操作符和 && 操作符有什么区别?](./&%20操作符和%20&&%20操作符有什么区别.md)
- [a = a + b 与 a += b 的区别?](./Java%20中%20a+=b%20和%20a=a+b%20有什么区别.md)
- [3*0.1 == 0.3 将会返回什么?true 还是 false ?](./3*0.1%20==%200.3%20将会返回什么?true%20还是%20false.md)
- [float f = 3.4; 是否正确 ?](./float%20f%20=%203.4.md)
- [short s1 = 1; s1 = s1 + 1;有什么错 ?](./short%20s1%20=%201;%20s1%20=%20s1%20+%201.md)
## 数据结构
**基础类型(Primitives)**
- 基础类型(Primitives)与封装类型(Wrappers)的区别在哪里
- 简述九种基本数据类型的大小,以及他们的封装类
- int 和 Integer 哪个会占用更多的内存? int 和 Integer 有什么区别?parseInt()函数在什么时候使用到
- float和double的默认值是多少
- 如何去小数四舍五入保留小数点后两位
- char 型变量中能不能存贮一个中文汉字,为什么
**类型转换**
- 怎样将 bytes 转换为 long 类型
- 怎么将 byte 转换为 String
- 如何将数值型字符转换为数字
- 我们能将 int 强制转换为 byte 类型的变量吗?如果该值大于 byte 类型的范围,将会出现什么现象
- 能在不进行强制转换的情况下将一个 double 值赋值给 long 类型的变量吗
- 类型向下转换是什么
**数组**
- 如何权衡是使用无序的数组还是有序的数组
- 怎么判断数组是 null 还是为空
- 怎么打印数组? 怎样打印数组中的重复元素
- Array 和 ArrayList有什么区别?什么时候应该使用Array而不是ArrayList
- 数组和链表数据结构描述,各自的时间复杂度
- 数组有没有length()这个方法? String有没有length()这个方法
**队列**
- 队列和栈是什么,列出它们的区别
- BlockingQueue是什么
- 简述 ConcurrentLinkedQueue LinkedBlockingQueue 的用处和不同之处。
**ArrayList、Vector、LinkedList的存储性能和特性**
**String**
**StringBuffer**
- ByteBuffer 与 StringBuffer有什么区别
**HashMap**
- HashMap的工作原理是什么
- 内部的数据结构是什么
- HashMap 的 table的容量如何确定?loadFactor 是什么? 该容量如何变化?这种变化会带来什么问题?
- HashMap 实现的数据结构是什么?如何实现
- HashMap 和 HashTable、ConcurrentHashMap 的区别
- HashMap的遍历方式及效率
- HashMap、LinkedMap、TreeMap的区别
- 如何决定选用HashMap还是TreeMap
- 如果HashMap的大小超过了负载因子(load factor)定义的容量,怎么办
- HashMap 是线程安全的吗?并发下使用的 Map 是什么,它们内部原理分别是什么,比如存储方式、hashcode、扩容、 默认容量等
**HashSet**
- HashSet和TreeSet有什么区别
- HashSet 内部是如何工作的
- WeakHashMap 是怎么工作的?
**Set**
- Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用 == 还是 equals()? 它们有何区别?
- TreeMap:TreeMap 是采用什么树实现的?TreeMap、HashMap、LindedHashMap的区别。TreeMap和TreeSet在排序时如何比较元素?Collectio
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Java前后开发面试题,大厂进阶之路,基于JavaGuide、Cyc大佬、牛客上的面经及王道考研相关视频,并改进了其中说法矛盾或含糊之处。 包含计算机网络知识、JavaSE、JVM、Spring、Springboot、SpringCloud、Mybatis、多线程并发、netty、MySQL、MongoDB、Elasticsearch、Redis、HBASE
资源推荐
资源详情
资源评论
收起资源包目录
Java 笔试面试题整理.zip (176个子文件)
README.bak 36KB
main.css 59KB
han.css 50KB
han.min.css 45KB
font-embedded.css 42KB
font-awesome.css 37KB
font-awesome.min.css 30KB
pace-theme-loading-bar.min.css 8KB
needsharebutton.css 7KB
instantsearch.min.css 6KB
jquery.fancybox.css 5KB
jquery.fancybox.css 5KB
pace-theme-bounce.min.css 4KB
pace-theme-barber-shop.min.css 3KB
pace-theme-mac-osx.min.css 2KB
jquery.fancybox-buttons.css 2KB
jquery.fancybox-buttons.css 2KB
pace-theme-center-atom.min.css 2KB
pace-theme-center-circle.min.css 2KB
pace-theme-flash.min.css 2KB
pace-theme-corner-indicator.min.css 2KB
pace-theme-center-radar.min.css 1000B
jquery.fancybox-thumbs.css 735B
jquery.fancybox-thumbs.css 735B
pace-theme-center-simple.min.css 731B
pace-theme-big-counter.min.css 635B
pace-theme-fill-left.min.css 283B
pace-theme-minimal.min.css 250B
fontawesome-webfont.eot 162KB
fancybox_loading@2x.gif 14KB
fancybox_loading@2x.gif 14KB
fancybox_loading.gif 6KB
fancybox_loading.gif 6KB
avatar.gif 3KB
blank.gif 43B
blank.gif 43B
loading.gif 35B
placeholder.gif 35B
.gitignore 354B
README.html 63KB
index.html 21KB
index.html 21KB
index.html 21KB
Interface 与 abstract 类的区别.html 17KB
操作系统中 heap 和 stack 的区别.html 17KB
JRE、JDK、JVM 及 JIT 之间有什么不同.html 17KB
index.html 16KB
index.html 16KB
index.html 16KB
index.html 16KB
get 和 post 请求的区别.html 15KB
ACID.html 15KB
index.html 15KB
HashMap 和 HashTable 的区别.html 14KB
java 中 String 类为什么不可变.html 14KB
index.html 14KB
Java 中 a+=b 和 a=a+b 有什么区别.html 14KB
index.html 14KB
transient变量有什么特点.html 13KB
wait() 和 sleep() 的区别.html 13KB
short s1 = 1; s1 = s1 + 1.html 13KB
Java 有几种修饰符 分别用来修饰什么.html 13KB
float f = 3.4.html 13KB
ArrayList 和 LinkedList 的区别.html 13KB
3_0.1 == 0.3 将会返回什么?true 还是 false.html 12KB
& 操作符和 && 操作符有什么区别.html 12KB
while 循环和 do-while 循环有什么不同.html 12KB
README.html 11KB
index.html 9KB
index.html 9KB
README.html 3KB
CONTRIBUTING.html 3KB
three.min.js 491KB
instantsearch.min.js 397KB
velocity.js 209KB
index.js 82KB
han.js 80KB
jquery.fancybox.js 48KB
jquery.fancybox.js 48KB
canvas_sphere.min.js 37KB
canvas_lines.min.js 36KB
three-waves.min.js 36KB
han.min.js 36KB
velocity.min.js 34KB
velocity.ui.js 34KB
fastclick.js 25KB
jquery.fancybox.pack.js 23KB
jquery.fancybox.pack.js 23KB
needsharebutton.js 19KB
velocity.ui.min.js 13KB
ua-parser.min.js 13KB
pace.min.js 12KB
utils.js 11KB
ua-parser.pack.js 10KB
motion.js 10KB
jquery.lazyload.js 9KB
fastclick.min.js 8KB
jquery.fancybox-media.js 5KB
jquery.fancybox-media.js 5KB
scrollspy.js 5KB
共 176 条
- 1
- 2
资源评论
极致人生-010
- 粉丝: 4461
- 资源: 3139
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- xtuoj平方数及其倍数.docx
- 修改新版个人免签支付系统V5.1.mp4
- 纯金属枝晶凝固模型多点枝晶相场模型cmsol源码
- 迅雷推出首款浏览器迅雷浏览器1123.0.4920.mp4
- 央视视频下载器v1.0 高清+超清+4K.mp4
- 一个工具箱app 带给你全新应用体验.mp4
- 杨萃先职场36计最实用的升职加薪“兵法”.mp4
- 一个人的创业要注意什么?创业经验分享.mp4
- 一键AI抠图更换背景Digiarty.Image.Matting.v2.0.mp4
- S变换+Sockwell R G , Mansinha L , Lowe R P . Localization of the complex spectrum: the S transformJ
- 伊里斯影视app 紧跟最新影视潮流.mp4
- 移动拼图必得50减10元话费券.mp4
- 移动每周三抽86折话费充值券.mp4
- 移动灵犀客服领流量或话费等.mp4
- 移动问答卷抽话费亲测50元话费.mp4
- 移动用户直接领12GB日包流量.mp4
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功