2019年Java 最常见的 面试题


Posted in 面试题 onOctober 19, 2016

1、java中Static关键字有哪些特点???

答:

1)、static成员变量

静态变量:属于类,内存中只有一个复制,所有实例都指向同一个内存地址,只要类被加载,静态变量就会本分配空间,调用方式有两种。类.静态变量 和 对象.静态变量

实例变量:属于对象,只有对象被创建,实例对象才会被分配空间,调用方式:对象.实例变量

2)、static成员方法

静态方法:属于类,不需要创建对象,就可以被调用。调用方式:类.静态方法 和 对象.静态方法

非静态方法:属于对象,只能在对象被创建出来之后才可以被使用。

注意:static方法中,不能使用this和super关键字,不能调用非static方法,只能访问所属类的静态成员变量和静态成员方法。

2、java中length属性与length()方法有什么区别???

答:length属性属于数组,用来获取数组的长度;而length()方法属于String 用来计算字符串长度。

3、java中Collections框架是什么???

答:Collection是整个集合框架的基础,它里面存储了一组对象,用于表示不同类型的Collections.主要有一下三种,其特点如下。

1)、set 主要特点集合中元素不能重复。

2)、list有序的Collection,按照对象的进入顺序保存对象,可以重复。

3)、map提供了从键映射到值得数据结构,值可以重复单键必须唯一。

4、java中ArrayList 、Vector 、LinkedList有什么区别???

答:ArrayList 、Vector 、LinkedList类均在java.util包,均为可伸缩数组,即可以动态改变长度的数组。

ArrayList 、Vector 都是基于数组来实现的,数据存储是连续的,支持下标访问元素,查询快,插入慢。

区别在于:ArrayList提供的方法都不是同步的,且线程不安全,但效率高。Vector大部分方法都是同步的,且线程安全,效率低。

LinkedList 采用双向链表来实现,因此访问效率低,插入效率高,且该容器是非线性安全的。

5、java中HashTable与HashMap有什么区别???

答:

1、父类不同:

HashMap是继承自AbstractMap类,而HashTable是继承自Dictionary。但都是实现了Map方法。

2、null值不同:

HashMap可以允许存在一个为null的key和任意个null的value,但是HashTable中的key和value都不允许为null。

3、线程安全性:

hashtable是线程安全的,hashmap不之初线程同步,不是线程安全的

11、同步与异步的区别???

答:所谓的同步,就是发出一个功能调用时,在没有得到结果之前,该调用就不会放回,或继续执行后续操作。简单来说,同步就是必须一件一件的来做,等前一件事做完了,才能做下一件事。



6. throw 和 throws 的区别?

throws是用来声明一个方法可能抛出的所有异常信息,throws是将异常声明但是不处理,而是将异常往上传,谁调用我就交给谁处理。而throw则是指抛出的一个具体的异常类型。

75. final、finally、finalize 有什么区别?

  • final可以修饰类、变量、方法,修饰类表示该类不能被继承、修饰方法表示该方法不能被重写、修饰变量表示该变量是一个常量不能被重新赋值。

  • finally一般作用在try-catch代码块中,在处理异常的时候,通常我们将一定要执行的代码方法finally代码块中,表示不管是否出现异常,该代码块都会执行,一般用来存放一些关闭资源的代码。

  • finalize是一个方法,属于Object类的一个方法,而Object类是所有类的父类,该方法一般由垃圾回收器来调用,当我们调用System的gc()方法的时候,由垃圾回收器调用finalize(),回收垃圾。


7. try-catch-finally 中哪个部分可以省略?

答:catch 可以省略

原因:

更为严格的说法其实是:try只适合处理运行时异常,try+catch适合处理运行时异常+普通异常。也就是说,如果你只用try去处理普通异常却不加以catch处理,编译是通不过的,因为编译器硬性规定,普通异常如果选择捕获,则必须用catch显示声明以便进一步处理。而运行时异常在编译时没有如此规定,所以catch可以省略,你加上catch编译器也觉得无可厚非。

理论上,编译器看任何代码都不顺眼,都觉得可能有潜在的问题,所以你即使对所有代码加上try,代码在运行期时也只不过是在正常运行的基础上加一层皮。但是你一旦对一段代码加上try,就等于显示地承诺编译器,对这段代码可能抛出的异常进行捕获而非向上抛出处理。如果是普通异常,编译器要求必须用catch捕获以便进一步处理;如果运行时异常,捕获然后丢弃并且+finally扫尾处理,或者加上catch捕获以便进一步处理。

至于加上finally,则是在不管有没捕获异常,都要进行的“扫尾”处理。

8. try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?

答:会执行,在 return 前执行。



Tags in this post...

面试题 相关文章推荐
Java里面StringBuilder和StringBuffer有什么区别
Jun 06 面试题
serialVersionUID具有什么样的特征
Feb 20 面试题
如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗
Feb 15 面试题
广州地球村科技数据库题目
Apr 25 面试题
北京某公司的.net笔试题
Mar 20 面试题
木马的传播途径主要有哪些
Apr 08 面试题
飞利信loadrunner和软件测试笔试题
Sep 22 面试题
网友共享的几个面试题关于Java和Unix等方面的
Sep 08 面试题
类的返射机制中的包及核心类
Sep 12 面试题
写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔
Jul 30 面试题
如何定义一个可复用的服务
Sep 30 面试题
Java面试题冲刺第十五天--设计模式
Aug 07 面试题
2019年Java面试必问之经典试题
Sep 12 #面试题
金讯Java笔试题目
Jun 18 #面试题
某公司Java工程师面试题笔试题
Mar 27 #面试题
JAVA代码查错题
Oct 10 #面试题
怎么处理XML的中文问题
Mar 26 #面试题
一套Java笔试题
Aug 20 #面试题
某个公司的Java笔面试题
Mar 11 #面试题
You might like
php模拟ping命令(php exec函数的使用方法)
2013/10/25 PHP
PHP管理依赖(dependency)关系工具 Composer 安装与使用
2014/08/18 PHP
PHP实现将视频转成MP4并获取视频预览图的方法
2015/03/12 PHP
拖动一个HTML元素
2006/12/22 Javascript
摘自百度的图片轮换效果代码
2007/11/19 Javascript
浅析jQuery1.8的几个小变化
2013/12/10 Javascript
javascript计时器详解
2015/02/28 Javascript
Bootstrap网格系统详解
2016/04/26 Javascript
javascript中对Date类型的常用操作小结
2016/05/19 Javascript
AngularJS 过滤与排序详解及实例代码
2016/09/14 Javascript
jQuery实现ToolTip元素定位显示功能示例
2016/11/23 Javascript
简单理解Vue条件渲染
2016/12/03 Javascript
js下载文件并修改文件名
2017/05/08 Javascript
Vue-cropper 图片裁剪的基本原理及思路讲解
2018/04/17 Javascript
Vue项目数据动态过滤实践及实现思路
2018/09/11 Javascript
vue+axios 前端实现登录拦截的两种方式(路由拦截、http拦截)
2018/10/24 Javascript
JS立即执行函数功能与用法分析
2019/01/15 Javascript
layui form.render('select', 'test2') 更新渲染的方法
2019/09/27 Javascript
JavaScript中clientWidth,offsetWidth,scrollWidth的区别
2021/01/25 Javascript
Python手机号码归属地查询代码
2016/05/04 Python
python输入错误密码用户锁定实现方法
2017/11/27 Python
机器学习的框架偏向于Python的13个原因
2017/12/07 Python
python requests.get带header
2020/05/05 Python
Python绘图实现台风路径可视化代码实例
2020/10/23 Python
css3让div随鼠标移动而抖动起来
2014/02/10 HTML / CSS
基于 HTML5 WebGL 实现的医疗物流系统
2019/10/08 HTML / CSS
Debenhams爱尔兰:英国知名的百货公司
2017/01/02 全球购物
世界上第一个水枕头:Mediflow
2018/12/06 全球购物
汽车专业大学生职业生涯规划范文
2014/01/07 职场文书
银行纠风工作实施方案
2014/06/08 职场文书
亚运会口号
2014/06/20 职场文书
2014年幼儿园安全工作总结
2014/11/10 职场文书
小学开学典礼新闻稿
2015/07/17 职场文书
毕业生入职感言
2015/07/31 职场文书
制定企业培训计划的五大要点!
2019/07/10 职场文书
快消品行业营销模式与盈利模式分享
2019/09/27 职场文书