java基础题库及答案(java基础知识面试题)
本篇文章给大家谈谈
许多人在找Java程序员的相关工作时,好不容易收到了面试邀约,却对面试官要问什么问题一无所知,最终白白失去了机会,为了防止这样的情况发生,“好程序员”特意为大家整理汇总了十道经典Java面试题,让你在面试时做到有备无患。
1、面向对象的特征有哪些方面?答案:抽象:抽象是将一类对象的共同特征总结出来构造类的过程;继承:继承是从已有类得到继承信息创建新类的过程;封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口;多态性:多态性是指允许不同子类型的对象对同一消息作出不同的响应。
2、String 是最基本的数据类型吗?答案:不是Java中的基本数据类型橘子搜索网站只有:byte、short、int、long、float、double、char、boolean3、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是个一个工具类,提供静态方法来辅助容器操作。
优秀的你与大厂之间只差一个“好程序员”!