您的位置 首页 java

Java面试题大汇总

许多人在找 Java 程序员的相关工作时,好不容易收到了面试邀约,却对面试官要问什么问题一无所知,最终白白失去了机会,为了防止这样的情况发生,“好程序员”特意为大家整理汇总了十道经典Java面试题,让你在面试时做到有备无患。

1、面向对象的特征有哪些方面?

答案:抽象:抽象是将一类对象的共同特征总结出来构造类的过程;继承:继承是从已有类得到继承信息创建新类的过程;封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口;多态性:多态性是指允许不同子类型的对象对同一消息作出不同的响应。

2、 String 是最基本的数据类型吗?

答案:不是。Java中的基本数据类型只有: byte short 、int、long、float、double、 char boolean

3、int和 Integer 有什么区别?

答案:Java为每一个基本数据类型都引入了对应的包装类型,Integer是int的包装类,Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换。

4、描述一下 JVM 加载 class文件 的原理机制?

答案:JVM中类的装载由类加载器和它的子类实现的,Java中的类加载器是Java运行时的重要系统组件,负责在运行时查找和装入类文件中的类。类的加载是指把类的.class文件中的数据读入到内存中,一般是创建一个字节数组读入.class文件。

5、 抽象类 abstract class)和接口(interface)有什么区别?

答案:抽象类中可以定义 构造器 ,而接口中不能定义。抽象类中的成员可以是 private 、默认、protected、public的,而接口中的成员全都是public的。抽象类可以定义成员变量,而接口中定义的成员变量实际上都是常量。

6、Java 中会存在 内存泄漏 吗?

答案:理论上Java因为有垃圾回收机制不会存在内存泄露问题,但在实际开发中,可能会存在不能被回收的对象,从而导致内存泄露。

7、GC是什么?为什么要有GC?

答案:GC是垃圾收集的意思,可以有效的防止内存泄露。

8、Java 中的final关键字有哪些用法?

答案:(1)修饰类:该类不能被继承;(2)修饰方法:方法不能被重写;(3)修饰变量:变量只能一次赋值以后值不能被修改(常量)。

9、比较一下Java和JavaSciprt。

答案:Java面向对象,即使是开发简单的程序,必须设计对象;JavaScript是种 脚本语言 ,可以用来制作与网络无关的,与用户交互作用的复杂软件。Java的源代码在执行之前,必须经过编译。JavaScript源代码不需经过编译,由浏览器解释执行。

10、 Collection 和Collections的区别?

答案:Collection是Set、List等容器的父接口;Collections是个一个工具类,提供 静态方法 来辅助容器操作。


优秀的你与大厂之间只差一个“好程序员”!

文章来源:智云一二三科技

文章标题:Java面试题大汇总

文章地址:https://www.zhihuclub.com/200410.shtml

关于作者: 智云科技

热门文章

发表回复

您的电子邮箱地址不会被公开。

网站地图