Java面试容易容易出现的一些考点
考点内容是我个人的一点看法,不代表一定是这些,后面会慢慢继续补充
请写出final、finally、finalize的区别
1、final和finally都是关键字。而finalize是一个方法,是属于Object的一个方法,用来销毁对的方法,但是这个方法不是由我们程序员来调用,而是由GC(Java中的垃圾回收机制)来调用,具体怎么调用,什么时候调用我们都是不知道的。
2、final是一个修饰常量的修饰符,但是也可以修饰类和方法,final在修饰类的时候,表示这个类不能被继承。final在修饰方法和时候,表示这个方法不能被重写。也就是我们常说的最终类和最终方法。finally都会出现在try{ } catch ( ){ }finally{ }语句中。如果在try 、catch、语句中使用finally的话,表示finally语句块的中语句不管在什么情况下(除非你关掉JVM或者电脑)都会被执行。
抽象类和接口和区别
1、抽象类中可以包含普通方法。而接口中只能包含抽象方法。
2、抽象类中可以定义静态方法。而接口中不能定义静态方法。
3、抽象类可以定义普通属性,也可以定义静态常量属性。而接口中只能定义静态常量属性,不能定义普通属性。
4、抽象类可以包含构造器,抽象类中的构造器并不是用于产生对象,而是让子类调用这些构造器来完成属于抽象类的初始化工作。接口中不包含构造器。
5、抽象类可以包含初始化块。而接口中不包含初始化块。
6、一个类最多有一个直接父类,包括抽象类。但是一个类可以直接实现多个接口,通过实现多个接口来弥补Java单继承的不足。
throw 和 Throws的区别
1、throw是抛出另一个异常对象。throws是声明可能会出现的异常。
2、throw抛出运行时异常不会自动提醒。throws会提醒。
3、出现的位置不同。throw是出现在方法的实现部份。throws是出现在方法的声明部分。
4、throw是一段可执行代码,一旦被执行,就会真正发生一个异常对象被抛出,如果throw后面跟的是一个运行时异常,就不需要要求方法声明部分使用throws。如果throw后面跟上非运行异常。就需要要求方法声明部份使用throws;throws不是执行代码,只是警告方法调用者,本方法有可能会发生异常,调用者需要自行处理。
String、StringBuffer、StringBuilder的区别
1、String是对象内容不可改变。而StringBuffer和StringBuilder是专门用来做字符串内容可变的。三者之间没有任何继承关系,它们都是直接继承的Object。
2、StringBuffer和StringBuilder的相同处是都用来做字符串内容可变的,不同点是StringBuffer的线程是安全的,但是它的效率低。反之StringBuilder的线程是不安全的,但是效率高。
vertor和ArrayList的区别
1、vertor这个类名称中虽然没有List,但它也是List分支下面的集合类。
2、它在底层的实现和ArrayList是一样的,都是数组。
3、vertor线程是安全的,但效率低,ArrayList线程不安全,但是效率高。
线程安全问题在单线程中不会发生,在多线程中发生概率也很低,所以一般我们不用考虑。
HashMap与HashTable进行比较
1、HashTable的键、值都必须为非空。而HashMap的键和或值都可为空(键只能有一个null).
2、HashTable的线程是安全,但是效率低,反之HashMap的线程不是安全的。
以上内容属于个人观点。在面试中经常会遇到的考题。后续发现会继续补充
Java面试容易容易出现的一些考点的更多相关文章
- Java面试 32个核心必考点完全解析
目录 课程预习 1.1 课程内容分为三个模块 1.2 换工作面临问题 1.3 课程特色 课时1:技术人职业发展路径 1.1 工程师发展路径 1.2 常见技术岗位划分 1.3 面试岗位选择 1.4 常见 ...
- Java面试题精选(三) JSP/Servlet Java面试逻辑题
-- JSP/Servlet Java面试逻辑题 -- 很显然,Servlet/JSP的WEB前端动态制作的重要性比HTML/CSS/JS的价值高很多,但我们都知道他们都是建立在HT ...
- Java面试,如何在短时间内做突击
面试前很有必要针对性的多刷题,大部分童鞋实战能力强,理论不行,面试前不做准备很吃亏.这里整理了很多常考面试题,希望对你有帮助. 面试技术文 Java岗 面试考点精讲(基础篇01期) Java岗 面 ...
- 除了背八股文,Java面试更该这样准备
我可以这样说,哪怕你背了再多java八股文的答案,过面试也能靠运气,因为很多java面试的答案只限于技术理论说辞.但用我本文给出的方法去准备面试,能在不提升技术的前提下,大大提升你java面试的通过率 ...
- JAVA面试中问及HIBERNATE与 MYBATIS的对比,在这里做一下总结
我是一名java开发人员,hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和 ...
- 转:最近5年133个Java面试问题列表
最近5年133个Java面试问题列表 Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来 ...
- java面试宝典(蓝桥学院)
Java面试宝典(蓝桥学院) 回答技巧 这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的学生在笔试/面试时更好地赢得好的结果.由于这套试题涉及的范围 ...
- JAVA面试精选【Java基础第一部分】
这个系列面试题主要目的是帮助你拿轻松到offer,同时还能开个好价钱.只要能够搞明白这个系列的绝大多数题目,在面试过程中,你就能轻轻松松的把面试官给忽悠了.对于那些正打算找工作JAVA软件开发工作的童 ...
- Java面试必备知识
JAVA面试必备知识 第一,谈谈final, finally, finalize的区别. 第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可 ...
随机推荐
- 手动ecache处理
手动ecache处理: import net.sf.ehcache.Cache; import net.sf.ehcache.CacheManager; import net.sf.ehcache.E ...
- php使用openssl进行数字签名验证
<?php /** * Created by PhpStorm. * User: hanks * Date: 6/2/2017 * Time: 6:03 PM */ /* [数字签名] 使用完全 ...
- 文件存储B+树
文件存储要选用B+树这样的数据结构 “文件存储要选用B+树这样的数据结构”——没记错的话,这是严蔚敏那本数据结构书上的一句结论.不知道是我没细看还是她没细讲,反正当时纯粹应试地记了这么个结论.不求甚解 ...
- [leetcode-500-Keyboard Row]
Given a List of words, return the words that can be typed using letters of alphabet on only one row' ...
- JavaScript函数部分
函数部分学习:+parseInt(): -parseInt()函数将其收到的任何输入值(通常是字符串)转换成整数类型输出,如果转换失败就返回NaN. -parseInt(“参数”,第二参数基数):没有 ...
- 打开vmvare出现The VMware Authorization Service is not running。
win+r再输入cmd打开doc,输入services.msc打开服务,吧Vmware Authorization Service 更改为自动或者将其启动即可.
- Spring+SpringMVC+MyBatis深入学习及搭建(十七)——SpringMVC拦截器
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7098753.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十六)--S ...
- [图形学] Chp18 OpenGL表面纹理函数
以2D表面为例展示纹理贴图,用opengl设置一个2D纹理,颜色存储在32*32*3的数组中,对应的纹理坐标为0<=s, t<=1.0. 画出几个正方形表面,分别以GL_CLAMP(纹理坐 ...
- App 组件化/模块化之路——构建开发架构思路
App 组件化/模块化开发架构思路 随着业务的发展 App 开发技术也越来越成熟,对开发者来说 App 代码量也迅速地增长到一个数量级.对于如何架构 App 已经每个开发者面临的实际问题.好的架构可以 ...
- 关于position:fixed;的居中问题
通常情况下,我们通过操作margin来控制元素居中,代码如下: #name{ maigin:0px auto; } 但当我们把position设置为fixed时,例如: #id{ position:f ...