Java面试题乱笔

此篇整理的面试题型有点乱,请见谅。

Object 类中的方法

12种:

Object()

wait()    wait(long)    wait(long,int)

hashCode()    equals(Object)

finalize()    clone()

toString()    getClass()

notify()    notifyAll()


hashmap put 方法存放的时候怎么判断是否是重复的

利用hashcode()方法,若相同,在用equal方法来判断(equals需要重写)



Object toString 方法常用的地方,为什么要重写该方法

toString方法中,return getClass().getName()+"@"+Integer.toHexString(hashCode());



Set 和 List 区别?

Set接口是无序(但它下面的SortedSet接口有序),不能重复的

List接口是有序并且能重复



ArrayList 和 LinkedList 区别

ArrayList是通过变长数组的算法实现

LinkedList是双向循环链表构成



如果存取相同的数据,ArrayList 和 LinkedList 谁占用空间更大?

LinkedList大,因为LinkedList是链表结构构成的,除了每个存储空间除了放自身值,还要放“指针”



Set 存的顺序是有序的吗?

Set是无序不重复的,但它的SortedSet子接口是有序的



常见 Set 的实现有哪些?

HashSet及其子类LinkedHashSet    Set的子接口SortedSet的实现类TreeSet



TreeSet 对存入对数据有什么要求呢?

数据不能重复,数据类型一致(/*可以通过重写Comparable接口中的compare方法实现数据重复*/)


HashSet 的底层实现呢

底层实现了HashMap

  • 对于HashSet中保存的对象,主要要正确重写equals方法和hashCode方法,以保证放入Set对象的唯一性
  • 虽说是Set是对于重复的元素不放入,倒不如直接说是底层的Map直接把原值替代了(这个Set的put方法的返回值真有意思)
  • HashSet没有提供get()方法,愿意是同HashMap一样,Set内部是无序的,只能通过迭代的方式获得

Java 中有哪些线程安全的 Map?

TableMap    SynchronizedMap    ConcurrentHashMap(红黑树和CAS算法)


hashcode 和 equals 方法常用地方

Java中的HashMap使用hashCode()和equals()方法来确定键值对的索引,当根据键获取值的时候也会用到这两个方法。如果没有正确的实现这两个方法,两个不同的键可能会有相同的hash值,因此,可能会被集合认为是相等的。而且,这两个方法也用来发现重复元素。所以这两个方法的实现对HashMap的精确性和正确性是至关重要的。


get与post请求的区别

get请求的大小有限,并且不安全,显示在url栏里,请求成功后返回的数据能缓存

post没大小限制,无缓存

最本质的区别是get请求发送一次数据包,服务器响应200(返回数据)

post请求是发送两次数据包,第一次先发送header,服务器响应100 继续,在发送第二次data,服务器响应200(返回数据)。

Object 类中的方法12种:Object()    wait()    wait(long)    wait(long,int)    hashCode()    equals(Object)finalize()    clone()toString()    getClass()notify()    notifyAll()hashmap put 方法存放的时候怎么判断是否是重复的
利用hashCode方法,若相同,在用equal方法来判断(equals需要重写)Object toString 方法常用的地方,为什么要重写该方法toString方法中,return getClass().getName()+"@"+Integer.toHexString(hashCode());Set 和 List 区别?Set接口是无序(但它下面的SortedSet接口有序),不能重复的List接口是有序并且能重复ArrayList 和 LinkedList 区别ArrayList是通过变长数组的算法实现LinkedList是双向循环链表构成如果存取相同的数据,ArrayList 和 LinkedList 谁占用空间更大?LinkedList大,因为LinkedList是链表结构构成的,除了每个存储空间除了放自身值,还要放“指针”Set 存的顺序是有序的吗?Set是无序不重复的,但它的SortedSet子接口是有序的常见 Set 的实现有哪些?HashSet及其子类LinkedHashSet    Set的子接口SortedSet的实现类TreeSetTreeSet 对存入对数据有什么要求呢?数据不能重复,数据类型一致(/*可以通过重写Comparable接口中的compare方法实现数据重复*/)HashSet 的底层实现呢底层实现了HashMap对于HashSet中保存的对象,主要要正确重写equals方法和hashCode方法,以保证放入Set对象的唯一性虽说是Set是对于重复的元素不放入,倒不如直接说是底层的Map直接把原值替代了(这个Set的put方法的返回值真有意思)HashSet没有提供get()方法,愿意是同HashMap一样,Set内部是无序的,只能通过迭代的方式获得Java 中有哪些线程安全的 Map?TableMap    SynchronizedMap    ConcurrentHashMap(红黑树和CAS算法)hashcode 和 equals 方法常用地方Java中的HashMap使用hashCode()和equals()方法来确定键值对的索引,当根据键获取值的时候也会用到这两个方法。如果没有正确的实现这两个方法,两个不同的键可能会有相同的hash值,因此,可能会被集合认为是相等的。而且,这两个方法也用来发现重复元素。所以这两个方法的实现对HashMap的精确性和正确性是至关重要的。
get与post请求的区别get请求的大小有限,并且不安全,显示在url栏里,请求成功后返回的数据能缓存post没大小限制,无缓存最本质的区别是get请求发送一次数据包,服务器响应200(返回数据)post请求是发送两次数据包,第一次先发送header,服务器响应100 继续,在发送第二次data,服务器响应200(返回数据)。

原文地址:https://www.cnblogs.com/bqylister/p/9638511.html

时间: 2024-10-03 04:42:39

Java面试题乱笔的相关文章

Java开发工程师上机笔试题

网上看到3道比较好的Java开发工程师上机笔试题,没有答案这里把答案写出来,给大家参考. 1.编一个程序,输入10个整数,并放在数组中,先降序输出所有的数,再统计并输出其中正数.负数和零的个数 package cn.Pigzhu.test; import java.util.Scanner; /**  * 控制台输入10个数字,并输入正负和零的个数  * @author xiaoyezhu  *  */ public class test { public static void main(St

班上一个哥们java脑残的笔试题1,2,3,4等于12可以重复3分钟答出来

package com.hao947; public class hao947 { public static void main(String[] args) { int a = 1; int b = 2; int c = 3; int d = 4; int count = 0; for (int i = 0; i <= 12; i++) { for (int j = 0; j <= 6; j++) { for (int k = 0; k <= 4; k++) { for (int l

收集了50道基础的java面试题

下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,原来的题目中有很多重复题目和无价值的题目,还有不少的参考答案也是错误的,修改后的Java面试题集参照了JDK最新版本,去掉了EJB 2.x等无用内容,补充了数据结构和算法相关的题目.经典面试编程题.大型网站技术架构.操作系统.数据库.软件测试.设计模式.UML等内容,同时还对很多知识点进行了深入的剖析,例如hashCode方法的设计.垃圾收集的堆和代.Java新的并发编程.NIO.2等,相信对准备入职的Ja

转:Java面试题集(51-70) http://blog.csdn.net/jackfrued/article/details/17403101

Java面试题集(51-70) Java程序员面试题集(51-70) http://blog.csdn.net/jackfrued/article/details/17403101 摘要:这一部分主要讲解了异常.多线程.容器和I/O的相关面试题.首先,异常机制提供了一种在不打乱原有业务逻辑的前提下,把程序在运行时可能出现的状况处理掉的优雅的解决方案,同时也是面向对象的解决方案.而Java的线程模型是建立在共享的.默认的可见的可变状态以及抢占式线程调度两个概念之上的.Java内置了对多线程编程的支

【转载】20道常见初级Java面试题

这篇文章的内容很不错.学到了很多东西.值得仔细琢磨. http://mt.sohu.com/20160831/n466900239.shtml 20道常见初级Java面试题,入职者必备! 广州华信智原2016-08-31 09:30:37阅读(564)评论(0) 声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场.举报 大家都应该知道Java是目前最火的计算机语言之一,连续几年蝉联最受程序员欢迎的计算机语言榜首,因此每年新入职Java程序员也数不胜数.究

Java面试题集(1-50)

说明:最近已经重新发布了最新的<Java面试题大全>,欢迎大家点击浏览. 下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,原来的题目中有很多重复题目和无价值的题目,还有不少的参考答案也是错误的,修改后的Java面试题集参照了JDK最新版本,去掉了EJB 2.x等无用内容,补充了数据结构和算法相关的题目.经典面试编程题.大型网站技术架构.操作系统.数据库.软件测试.设计模式.UML等内容,同时还对很多知识点进行了深入的剖析,例如hashCode方法的设计

java面试题 一

引言:准备要苦逼的找工作了,这是我最不愿意去面对的事情,因为我会被虐成渣渣,呵呵,事实总让人难以接受呀! 在网上找到的这份java面试题,所以转过来方便看,废话不多说了. 来源:http://www.importnew.com/22083.html 1.面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:- 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么.- 继承:继承是从已有类得到继承

java面试题(1-50)

下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,原来的题目中有很多重复题目和无价值的题目,还有不少的参考答案也是错误的,修改后的Java面试题集参照了JDK最新版本,去掉了EJB 2.x等无用内容,补充了数据结构和算法相关的题目.经典面试编程题.大型网站技术架构.操作系统.数据库.软件测试.设计模式.UML等内容,同时还对很多知识点进行了深入的剖析,例如hashCode方法的设计.垃圾收集的堆和代.Java新的并发编程.NIO.2等,相信对准备入职的Ja

java面试题(51-70)

摘要:这一部分主要讲解了异常.多线程.容器和I/O的相关面试题.首先,异常机制提供了一种在不打乱原有业务逻辑的前提下,把程序在运行时可能出现的状况处理掉的优雅的解决方案,同时也是面向对象的解决方案.而Java的线程模型是建立在共享的.默认的可见的可变状态以及抢占式线程调度两个概念之上的.Java内置了对多线程编程的支持在20世纪90年代可以说是一个巨大的进步,但是最初的设计在当下看来已经给程序带来很多困扰了.感谢Doug Lea在Java 5中提供了他里程碑式的杰作java.util.concu