2019我总结了140道Java高频面试题,来自BAT大厂的拷问
140个Java高频面试题,查漏补缺,共同学习
- JDK和JRE有什么区别?
- ==和equals的区别是什么?
- 基本类型和包装类对象使用==和equals进行比较的结果?
- 什么是装箱?什么是拆箱?装箱和拆箱的执行过程?常见问题?
- hashCode0相同,equals0也- 定为true吗?
- final在java中的作用
- final finally finalize()区别
- fnall)语句块一定执行吗?
- finaI与static的区别
- return与inaly的执行顺序对返回值的影响
- String对象中的replace和replaceAl的区别?
- Math.round(-1.5)等于多少?
- String属于基础的数据类型吗?
- java中操作字符串都有哪些类?它们之间有什么区别?
- 如何将字符串反转?
- String类的常用方法有哪些?
- 普通类和抽象类有哪些区别?
- 抽象类必须要有抽象方法吗?
- 抽象类能使用final修饰吗?
- 接口和抽象类有什么区别?
- Java访问修饰符有哪些?权限的区别?
- Java中的<< << >>>是什么?
- Javap的作用是什么?
- throw和throws的区别?
- try-catch-finally中哪个部分可以省略?
- 常见的异常类有哪些?
- 什么是JAVA内部类?
- nio中的Files类常用方法有哪些?
- 什么是反射?有什么作用?
- 动态代理是什么?应用场景?
- 怎么实现动态代理?
- 什么是java序列化?什么情况下需要序列化?
- 什么场最要对象克隆?
- 深拷贝和浅拷贝区别是什么?
- 如何实现对象克隆与深拷贝?
- Java跨平台运行的原理
- Java的安全性体现在哪里?
- Java针对不同的应用场景提供了哪些版本?
- 什么是JVM?
- 什么是JDK?
- 什么是JRE?
- JDK. JRE、 JVM之间的关系是什么样的?
- Java语言有哪些注释的方式?
- Java中有几种基本数据类型?它们分别占多大字节?
- it +和+ +i的作用和区别
- &和&8的作用和区别
- 和的作用和区别
- 如何让计算机最高效的算出2乘以8?
- Java中基本类型的转换规则
- if-else-if-else与switch的区别
- while和do-while的区别
- break语句的作用
- continue语句的作用
- Java中数组有什么特征?
- 可变参数的作用和特点是什么?
- 类和对象的关系
- 说一说你的对面向过程和面向对象的理解
- 方法重载和重写是什么?有什么区别?
- this和super关键字的作用
- static关键字的作用是什么?
- abstract关键字的作用是什么?
- java.lang.Object的常用方法?
- 子类构造方法的执行过程是什么样的?
- ==和equals的区别是什么?
- 什么是Java的多态?
- instanceof关键字的作用是什么?
- 什么是Java的垃圾回收机制?
- 什么是包装类?为什么要有包装类?基本类型与包装类如何转换?
- 基本类型和包装类的区别?
- java.sqI.Dateijava.util.Date的区别
- 关于Java编译,下面哪一个正确()
- 关于构造方法,下列说法正确的是()
- Java中接口的修饰符可以是()
- 以下代码将输出()
- 关于关键字的使用说法错误的是()
- 关于内存回收正确的是()
- 哪些标识符合法?
- 说法正确的是()
- 定义-个Java类,可被所有类访问,申明正确的是0
- 说说你对面向对象的理解
- 内存泄漏和内存溢出的区别
- 不通过构造方法能创建对象吗?
- 匿名内部类可以继承类或实现接口吗?为什么?
- 什么是多态?如何实现?有什么好处?
- Java中关于继承,错误的是()
- Math.random0的返回值是多少?
- 同步代码块和同步方法有什么区别?
- 内部类和静态内部类有什么区别?
- 下列运算符合法的是()
- 打印值是多少?
- 关于抽象,正确的是()
- 正确的是()
- 正确的是()
- 错误的是()
- 哪些不能修饰interface
- 正确是的()
- 存在i+1<的数吗?为什么?
- 接口可否继承接口?抽象类是否可实现接口?抽象类是否可继承实体类?
- 可序列化对象为什么要定义serialversionUID值?
- 十进制100转换成八进制是多少?
- Class类的getDeclaredFieldsQ与getFields0方法的区别?
- final修饰变量,是引用不能变? 还是引用的对象不能变?
- 解释以下正则表达式的含义
- 声明合法的是0
- 下面打印结果是?
- Java属于编译型还是解释型语言?
- 如果有两个类A. B (注意不是接口),如何编写C类同时使用这两个类的功能?
- 构造方法是否可以被重载?重写?
- 基本类型byte表示的数值范围是多少?
- 日期类型如何格式化?字符串如何转日期?
- 当输入为2的时候返回值是
- System.out.println("a'+ 1):的结果是
- 静态与非静态成员变量区别?
- 二进制数,小数点向右移-一位, 值会发生什么变化?
- 下面两段代码的区别是?
- swtich能否作用在byte、long. String上?
- 在Java中,如何跳出当前的多重嵌套循环?
- 为什么不能根据返回类型来区分方法重载?
- Inner Class和Static Nested Class的区别?
- abstract方法是否可是static的? native的? synchronized的?
- 静态方法内部能对非静态调用吗?
- 内部类可以引用它的外部类的成员吗?有什么限制?
- 打印结果是什么
- 说说字符串与基本数据之间的转换
- GB2312编码的字符串如何转换为ISO-8859-1编码?
- Java中的日期与时间获取与转换?
- 反射主要实现类有哪些?
- Class类的作用是什么?如何获取Class对象?
- 面向对象设计原则有哪些?
- 反射的使用场景、作用及优缺点?
- 下面代码的输出是?
- 关于String0 strArr=new String[10];正确的是0
- 写一个方法实现String类的replaceAl方法
- String类是否可以继承?
- String、 StringBuilder. StringBuffer的区别?
- 为什么String类被设计用final修饰?
- String s = new String("xyz' ):创建几个String对象?
- String s="a"+"b" +"c" +"d";创建了几个对象?
- 对比一下Java和JavaSciprt
- 什么是assert?