Java工程师面试试题

时间:2023-01-10 23:30:18
2021年Java工程师面试试题

2021年Java工程师面试试题

在日复一日的学习、工作生活中,我们都经常看到试题的身影,试题是命题者根据测试目标和测试事项编写出来的。一份什么样的试题才能称之为好试题呢?以下是小编精心整理的`2021年Java工程师面试试题,欢迎大家借鉴与参考,希望对大家有所帮助。

一、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。

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

文档为doc格式