- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java开发工师面试题总结
JAVA开发工程师面试题总结--JAVASE部分
1.谈谈final,finally,finalize的区别?
final是Java的一个关键字,用于定义不能被继承的类,不能被覆写的方法,常量。
finally是Java的一个关键字,是异常处理操作的统一出口。
finalize是Object类中所提供的一个方法,用于在对象回收之前进行收尾操作。
2.请解释Java实现可移植性的原理
Java程序最终通过字节码文件运行,运行的时候字节码需要JVM的支持,但是在不同的操作系统上有不同JVM,程序不用关系操作系统,只关心JVM,只要JVM不改变,程序可以在操作系统间任意移植。
3.请解释path和classpath的区别?
path是windows的环境属性,用于指定可执行命令的路径
classpath是指在java程序执行的时候,用于指定类的加载路径
4.请说明下JAVA中的几个特殊关键字(了解,一般面试面这个问题的都是一些煞笔公司)
未使用到的关键字:goto、const
有特殊含义的关键字:null、true、false
JDK1.4之后增加了一个assert关键字
JDK1.5之后增加了一个enum关键字
5.请解释JAVA中的数据类型的划分,并说出其默认值
基本数据类型:
数值型:
整型:byte、short、int、long; 0
浮点型:float、double; 0
字符型:char 空字符:’\u0000’
布尔型:boolean false
引用数据类型:数组、类、接口 null
6.请解释和、|和||的区别
(普通与)和|(普通或)指的是所有条件都进行判断;
(短路与)如果前面的条件不满足,则后面不再进行判断,||(短路或)如果前面的条件满足则后面不再判断;
在开发之中为了性能的提高,主要使用短路与和短路或操作;
和|除了用于逻辑运算之外,也可以进行位运算的操作;
7.请解释String类的两种比较方式
在String类中可以使用“ ”和equals 两种操作来进行字符串的比较
“ ”比较的是两个字符串的内存地址数值,属于数值比较
equals 是String类中提供的一个方法,用于字符串内容的比较,最简单的做法就是比较字符串永远使用equals 方法就行了
8.请解释String对象的两种实例化方式的区别
首先String对象的实例化方式有两种:一种是直接赋值,另外一种是通过构造方法完成
直接赋值:只开辟一个堆内存空间,而且采用了共享设计模式,可以自动入池,以备下次对象继续使用
构造方法:会开辟两快内存空间,其中有一块空间将成为垃圾,而且不会自动入池,可以使用intern 方法进行手工入池
从开发角度来说,很明显使用直接赋值的方式会更好一些
9.请谈谈方法的重载和覆写的区别
首先重载和覆写都是面向对象多态性的一个体现
重载
单词:OverLoading
概念:方法名称相同,参数的类型或个数不同
范围:发生在一个类之中
权限:重载的时候没有权限的限制
覆写
单词:Override
概念:方法名称、返回值、参数的个数及类型全部相同
范围:发生在继承关系中
权限:子类覆写的方法不能拥有比父类更严格的访问控制权限
重载的时候可以返回值类型不相同,但是没有任何意义
10.请谈谈this和super的区别
this
属性:this.属性表示的是找到本类的属性,如果本类没有找到则继续查找父类
方法:this方法 表示找到本类的方法,如果本类没有找到则继续查找父类
构造:必须放在构造方法的首行,不能与super关键字同时出现
特殊:表示当前对象
super
属性:super.属性直接在子类之中查找父类中的指定属性,不在查找子类本身
方法:super.方法 直接在子类之中查找父类中的指定方法,不在查找子类本身
构造:必须放在构造方法首行,不能与this关键字同时出现
在开发之中使用this和super可以明确的划分出子类和父类之间的操作
11.请解释Collection和Collections的关系
两者之间在定义上没有直接的关系
Collection是单值集合的操作最大父接口
Collections只是一个集合的工具操作类
12.为什么构造方法的定义上不写返回值类型,如果不返回写一个void不也可以吗
如果构造方法上写了void的话,则表示的就是一个普通方法了,普通方法是在对象实例化之后调用的,而构造方法是在对象实例化的时候同时调用的
13.请解释Error和Exception的区别
Error:表示的是JVM出错,即,程序还没有运行时所发生的错误,用户无法处理;
Exception:表示程序运行时发生的错误,用户可以处理;
14.请解释String与StringBuffer的区别,分别在什么时候用
Stri
文档评论(0)