前言
金九银十即将到来,想面试的小伙伴想必都在着手准备吧!目前市面上的面试题不是答案不准确就是内容覆盖面太窄,所以提供一份经典而又准确的面试题是非常有必要的。那么今天我们就来看看!
本文会对部分面试题提供详细解读和代码案例,让读者知其然并知其所以然,从而学到更多的知识。(附带答案文档)
目录
正文
一、Java基础(JVM、设计模式、容器、反射、对象拷贝、Java Web、异常、网络)
Java基础
- 1.JDK和JRE有什么区别?
- 2.==和equals的区别是什么?
- 3.两个对象的hashCode() 相同,则equals() 也一定为true,对吗?
- 4.final在Java中有什么作用?
- 5.String属于基础的数据类型吗?
- 6.Java中操作字符串都有哪些类?它们之间有什么区别?
- 7.String str="i"与 String str=new String(“i”)一样吗?
- 8.如何将字符串反转?
- 9.String类的常用方法都有哪些?
- 10.抽象类必须要有抽象方法吗?
- …
JVM
- 1.Java中你怎样唤醒一个阻塞的线程?
- 2.在 Java中CycliBarriar和CountdownLatch有什么区别?
- 3.为什么我们调用start()方法时会执行 run()方法,为什么我们不能直接调用 run()方法?
- 4.垃圾回收与算法、如何确定垃圾、标记清除算法、复制算法、标记整理算法、分代收集算法
- 5.GC分代收集算法VS分区收集算法、分代收集算法、分区收集算法
- 6.程序计数器(线程私有)、虚拟机栈(线程私有)
- 7.JVM类加载机制、验证、加载、准备、直接引用、类构造器、符号引用…
- 8.描述一下JVM加载class文件的原理机制?
- 9.JVM的永久代中会发生垃圾回收么
- 10.垃圾收集算法、GC最基础的算法有哪几种?
设计模式
- 有哪几种设计模式?(单例模式、工厂模式、观察者模式、外观模式、模版方法模式状态模式)解释一下?
- 2.简单工厂和抽象工厂有什么区别?(简单工厂、工厂方法、抽象工厂)解释一下?
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9X5yFTSC-1659949568162)(https://mp.toutiao.com/mp/agw/article_material/open_image/get?code=OWVmNDJjZDUzZTIyNTdkNzk4MTJkMzA1MDAyOGYyMDUsMTY1OTk0OTQyNjU3OA==)]
容器
- 1.Java容器都有哪些?
- 2.Collection和Collections有什么区别?
- 3.Collection和Collections有什么区别?
- 4.List、Set、Map之间的区别是什么?
- 5.ArrayList和LinkList的区别?
反射
- 1.什么是反射?
- 2.什么是Java序列化?什么情况下需要序列化?
- 3.动态代理是什么?有哪些应用?
- 4.什么叫对象序列化,什么是反序列化,实现对象序列化需要做哪些工作?
- 5.哪里用到反射机制?
对象拷贝
- 1.为什么要使用克隆?
- 2.如何实现对象克隆?
- 3.深拷贝和浅拷贝区别是什么?
Java Web
- 1.JSP和servlet有什么区别?
- 2.JSP有哪些内置对象?作用分别是什么?
- 3.说一下JSP的4种作用域?
- 4.session和cookie有什么区别?
- 5.说一下session的工作原理?
异常
- 1.final、finally、fina