Java最常见面试试题

时间:2023-01-10 23:30:47
2021Java最常见面试试题

2021Java最常见面试试题

在学习、工作生活中,我们经常接触到试题,借助试题可以更好地检查参考者的学习能力和其它能力。你知道什么样的试题才能切实地帮助到我们吗?下面是小编帮大家整理的2021Java最常见面试试题,仅供参考,大家一起来看看吧。

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

1、static成员变量

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

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

2、static成员方法

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

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

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

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

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

三、java中Collections框架是什么?

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

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

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

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

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

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

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

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

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

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

1、父类不同:

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

2、null值不同:

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

3、线程安全性:

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

《2021Java最常见面试试题.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式