- 时间:2021-06-20 17:37 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:百度Java面试题 前200页精选(上)
百度“Java面试题”前200页精选上篇
[b]基本概念[/b]
操作系统中 heap 和 stack 的区别
什么是基于注解的切面实现
什么是 对象/关系 映射集成模块
什么是 Java 的反射机制
什么是 ACID
BS与CS的联系与区别
Cookie 和 Session的区别
fail-fast 与 fail-safe 机制有什么区别
get 和 post请求的区别
Interface 与 abstract 类的区别
IOC的优点是什么
IO 和 NIO的区别,NIO优点
Java 8 / Java 7 为我们提供了什么新功能
什么是竞态条件? 举个例子说明。
JRE、JDK、JVM 及 JIT 之间有什么不同
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)
[b]关键字[/b]
[b]finalize[/b]
1.什么是finalize()方法
finalize()方法什么时候被调用
析构函数(finalization)的目的是什么
final 和 finalize 的区别
final
2.final关键字有哪些用法
final 与 static 关键字可以用于哪里?它们的作用是什么
final, finally, finalize的区别
final、finalize 和 finally 的不同之处?
3.能否在运行时向 static final 类型的赋值
使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变
一个类被声明为final类型,表示了什么意思
throws, throw, try, catch, finally分别代表什么意义
Java 有几种修饰符?分别用来修饰什么
[b]volatile[/b]
volatile 修饰符的有过什么实践
volatile 变量是什么?volatile 变量和 atomic 变量有什么不同
volatile 类型变量提供什么保证?能使得一个非原子操作变成原子操作吗
能创建 volatile 数组吗?
transient变量有什么特点
super什么时候使用
public static void 写成 static public void会怎样
说明一下public static void main(String args[])这段声明里每个关键字的作用
请说出作用域public, private, protected, 以及不写时的区别
sizeof 是Java 的关键字吗
[b]static[/b]
static class 与 non static class的区别
static 关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法
静态类型有什么特点
main() 方法为什么必须是静态的?能不能声明 main() 方法为非静态
是否可以从一个静态(static)方法内部发出对非静态(non-static)方法的调用
静态变量在什么时候加载?编译期还是运行期?静态代码块加载的时机呢
成员方法是否可以访问静态变量?为什么静态方法不能访问成员变量
[b]switch[/b]
switch 语句中的表达式可以是什么类型数据
switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上
while 循环和 do 循环有什么不同
[b]操作符[/b]
&操作符和&&操作符有什么区别?
a = a + b 与 a += b 的区别?
逻辑操作符 (&,|,^)与条件操作符(&&,||)的区别
3*0.1 == 0.3 将会返回什么?true 还是 false?
float f=3.4; 是否正确?
short s1 = 1; s1 = s1 + 1;有什么错?
[b]数据结构[/b]
[b]基础类型(Primitives)[/b]
基础类型(Primitives)与封装类型(Wrappers)的区别在哪里
简述九种基本数据类型的大小,以及他们的封装类
int 和 Integer 哪个会占用更多的内存? int 和 Integer 有什么区别?parseInt()函数在什么时候使用到
float和double的默认值是多少
如何去小数四舍五入保留小数点后两位
char 型变量中能不能存贮一个中文汉字,为什么
[b]类型转换[/b]
怎样将 bytes 转换为 long 类型
怎么将 byte 转换为 String
如何将数值型字符转换为数字
我们能将 int 强制转换为 byte 类型的变量吗?如果该值大于 byte 类型的范围,将会出现什么现象
能在不进行强制转换的情况下将一个 double 值赋值给 long 类型的变量吗
类型向下转换是什么
[b]数组[/b]
如何权衡是使用无序的数组还是有序的数组
怎么判断数组是 null 还是为空
怎么打印数组? 怎样打印数组中的重复元素
Array 和 ArrayList有什么区别?什么时候应该使用Array而不是ArrayList
数组和链表数据结构描述,各自的时间复杂度
数组有没有length()这个方法? String有没有length()这个方法
[b]队列[/b]
队列和栈是什么,列出它们的区别
BlockingQueue是什么
简述 ConcurrentLinkedQueue LinkedBlockingQueue 的用处和不同之处。
ArrayList、Vector、LinkedList的存储性能和特性
String
[b]StringBuffer[/b]
ByteBuffer 与 StringBuffer有什么区别
[b]HashMap[/b]
HashMap的工作原理是什么
内部的数据结构是什么
HashMap 的 table的容量如何确定?loadFactor 是什么? 该容量如何变化?这种变化会带来什么问题?
HashMap 实现的数据结构是什么?如何实现
HashMap 和 HashTable、ConcurrentHashMap 的区别
HashMap的遍历方式及效率
HashMap、LinkedMap、TreeMap的区别
如何决定选用HashMap还是TreeMap
如果HashMap的大小超过了负载因子(load factor)定义的容量,怎么办
HashMap 是线程安全的吗?并发下使用的 Map 是什么,它们内部原理分别是什么,比如存储方式、 hashcode、扩容、 默认容量等
[b]HashSet[/b]
HashSet和TreeSet有什么区别
HashSet 内部是如何工作的
WeakHashMap 是怎么工作的?
[b]Set[/b]
Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢?是用 == 还是 equals()? 它们有何区别?
TreeMap:TreeMap 是采用什么树实现的?TreeMap、HashMap、LindedHashMap的区别。TreeMap和TreeSet在排序时如何比较元素?Collections工具类中的sort()方法如何比较元素?
TreeSet:一个已经构建好的 TreeSet,怎么完成倒排序。
EnumSet 是什么
[b]Hash算法[/b]
Hashcode 的作用
简述一致性 Hash 算法
有没有可能 两个不相等的对象有相同的 hashcode?当两个对象 hashcode 相同怎么办?如何获取值对象
为什么在重写 equals 方法的时候需要重写 hashCode 方法?equals与 hashCode 的异同点在哪里
a.hashCode() 有什么用?与 a.equals(b) 有什么关系
hashCode() 和 equals() 方法的重要性体现在什么地方
Object:Object有哪些公用方法?Object类hashcode,equals 设计原则? sun为什么这么设计?Object类的概述
如何在父类中为子类自动完成所有的 hashcode 和 equals 实现?这么做有何优劣。
可以在 hashcode() 中使用随机数字吗?
[b]LinkedHashMap[/b]
LinkedHashMap 和 PriorityQueue 的区别是什么
[b]List[/b]
List, Set, Map三个接口,存取元素时各有什么特点
List, Set, Map 是否继承自 Collection 接口
遍历一个 List 有哪些不同的方式
LinkedList
LinkedList 是单向链表还是双向链表
LinkedList 与 ArrayList 有什么区别
描述下 Java 中集合(Collections),接口(Interfaces),实现(Implementations)的概念。LinkedList 与 ArrayList 的区别是什么?
插入数据时,ArrayList, LinkedList, Vector谁速度较快?
ArrayList
ArrayList 和 HashMap 的默认大小是多数
ArrayList 和 LinkedList 的区别,什么时候用 ArrayList?
ArrayList 和 Set 的区别?
ArrayList, LinkedList, Vector的区别
ArrayList是如何实现的,ArrayList 和 LinkedList 的区别
ArrayList如何实现扩容
Array 和 ArrayList 有何区别?什么时候更适合用Array
说出ArraList,Vector, LinkedList的存储性能和特性
[b]Map[/b]
Map, Set, List, Queue, Stack
Map 接口提供了哪些不同的集合视图
为什么 Map 接口不继承 Collection 接口
[b]Collections[/b]
介绍Java中的Collection FrameWork。集合类框架的基本接口有哪些
Collections类是什么?Collection 和 Collections的区别?Collection、Map的实现
集合类框架的最佳实践有哪些
为什么 Collection 不从 Cloneable 和 Serializable 接口继承
说出几点 Java 中使用 Collections 的最佳实践?
Collections 中 遗留类 (HashTable、Vector) 和 现有类的区别
什么是 B+树,B-树,列出实际的使用场景。
[b]接口[/b]
Comparator 与 Comparable 接口是干什么的?列出它们的区别
[b]对象[/b]
[b]拷贝(clone)[/b]
如何实现对象克隆
深拷贝和浅拷贝区别
深拷贝和浅拷贝如何实现激活机制
写clone()方法时,通常都有一行代码,是什么
[b]比较[/b]
在比较对象时,”==” 运算符和 equals 运算有何区别
如果要重写一个对象的equals方法,还要考虑什么
两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
[b]构造器[/b]
构造器链是什么
创建对象时构造器的调用顺序
[b]不可变对象[/b]
什么是不可变象(immutable object)
为什么 Java 中的 String 是不可变的(Immutable)
如何构建不可变的类结构?关键点在哪里
能创建一个包含可变对象的不可变对象吗
如何对一组对象进行排序
[b]方法[/b]
构造器(constructor)是否可被重写(override)
方法可以同时即是 static 又是 synchronized 的吗
abstract 的 method是否可同时是 static,是否可同时是 native,是否可同时是synchronized
Java支持哪种参数传递类型
一个对象被当作参数传递到一个方法,是值传递还是引用传递
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递
我们能否重载main()方法
如果main方法被声明为private会怎样
[b]GC[/b]
[b]概念[/b]
GC是什么?为什么要有GC
什么时候会导致垃圾回收
GC是怎么样运行的
新老以及永久区是什么
GC 有几种方式?怎么配置
什么时候一个对象会被GC? 如何判断一个对象是否存活
System.gc() Runtime.gc()会做什么事情? 能保证 GC 执行吗
垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?
Minor GC 、Major GC、Young GC 与 Full GC分别在什么时候发生
垃圾回收算法的实现原理
如果对象的引用被置为null,垃圾收集器是否会立即释放对象占用的内存?
垃圾回收的最佳做法是什么
[b]GC收集器有哪些[/b]
垃圾回收器的基本原理是什么?
串行(serial)收集器和吞吐量(throughput)收集器的区别是什么
Serial 与 Parallel GC之间的不同之处
CMS 收集器 与 G1 收集器的特点与区别
CMS垃圾回收器的工作过程
JVM 中一次完整的 GC 流程是怎样的? 对象如何晋升到老年代
吞吐量优先和响应优先的垃圾收集器选择
[b]GC策略[/b]
举个实际的场景,选择一个GC策略
JVM的永久代中会发生垃圾回收吗
[b]收集方法[/b]
标记清除、标记整理、复制算法的原理与特点?分别用在什么地方
如果让你优化收集方法,有什么思路
[b]JVM[/b]
[b]参数[/b]
说说你知道的几种主要的jvm 参数
-XX:+UseCompressedOops 有什么作用
[b]类加载器(ClassLoader)[/b]
Java 类加载器都有哪些
JVM如何加载字节码文件
[b]内存管理[/b]
JVM内存分哪几个区,每个区的作用是什么
一个对象从创建到销毁都是怎么在这些部分里存活和转移的
解释内存中的栈(stack)、堆(heap)和方法区(method area)的用法
JVM中哪个参数是用来控制线程的栈堆栈小
简述内存分配与回收策略
简述重排序,内存屏障,happen-before,主内存,工作内存
Java中存在内存泄漏问题吗?请举例说明
简述 Java 中软引用(SoftReferenc)、弱引用(WeakReference)和虚引用
内存映射缓存区是什么
[list]
[*]jstack,jstat,jmap,jconsole怎么用[/*]
[*]32 位 JVM 和 64 位 JVM 的最大堆内存分别是多数?32 位和 64 位的 JVM,int 类型变量的长度是多数?[/*]
[*]怎样通过 Java 程序来判断 JVM 是 32 位 还是 64 位[/*]
[*]JVM自身会维护缓存吗?是不是在堆中进行对象分配,操作系统的堆还是JVM自己管理堆[/*]
[*]什么情况下会发生栈内存溢出[/*]
[*]双亲委派模型是什么
[/*]
[/list]
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程素材网。