1.Hashtable 与 HashMap 的区别:
Hashtable和HashMap的区别:
1.Hashtable是Dictionary的子类,HashMap是Map接口的一个实现类;
2.Hashtable中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。即是说,在多线程应用程序中,不用专门的操作就安全地可以使用Hashtable了;而对于HashMap,则需要额外的同步机制。但HashMap的同步问题可通过Collections的一个静态方法得到解决:
Map Collections.synchronizedMap(Map m)
这个方法返回一个同步的Map,这个Map封装了底层的HashMap的所有方法,使得底层的HashMap即使是在多线程的环境中也是安全的。
3.在HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。当get()方法返回null值时,即可以表示HashMap中没有该键,也可以表示该键所对应的值为null。因此,在HashMap中不能由get()方法来判断HashMap中是否存在某个键,而应该用containsKey()方法来判断。
4.HashTable使用Enumeration,HashMap使用Iterator。
以上只是表面的不同,它们的实现也有很大的不同。
5.HashTable中hash数组默认大小是11,增加的方式是 old*2+1。HashMap中hash数组的默认大小是16,而且一定是2的指数。
6.哈希值的使用不同,HashTable直接使用对象的hashCode,代码是这样的:
int hash = key.hashCode();
int index = (hash & 0x7FFFFFFF) % tab.length;
而HashMap重新计算hash值,而且用与代替求模:
int hash = hash(k);
int i = indexFor(hash, table.length);
static int hash(Object x) {
int h = x.hashCode();
h += ~(h << 9);
h ^= (h >>> 14);
h += (h << 4);
h ^= (h >>> 10);
return h;
}
static int indexFor(int h, int length) {
return h & (length-1);
}
2。Vcetor 与ArrayList 的确别:
Vector 是重量级容器 线程同步,增加内存容量时按照1倍来增加。
ArrayList是轻量级 飞线程同步,增加内存按照50%来增加。
3.final finally finalize的区别:
final修饰的类不能被extends 修饰的变量被能被重新赋值,修饰的方法不能被Override,修饰的方法参数只读,不能修改。
finally 在try {}catch(){}代码块后 无论前面是否有异常发生都必须执行的代码块。通常用来回收资源。
finalize 是Object类的一个protected的方法,当这个对象要被GC回收的时候就会调用这个方法。
4.sleep() 与 wait()方法的区别:
sleep()这是让线程沉睡一段时间,然后自动恢复。
wait() 是线程等待操作,需要notify()的操作才能恢复。
5.Override 与 Overload 的区别。。。fuck 这个就不说了。。
好 今天在盈正的笔试应该有的总结就这些,等待复试当中,祝我好运 呵呵。
做好 下一次复试准备功夫:
1.了解当今网络服务器端的架构
2.学习java nio
3.研究线程池的实现原理。。
分享到:
相关推荐
数据库笔试题及答案,需要找工作的同学可以下载进行学习
百度网上笔试题及答案 用C语言实现一个revert函数,它的功能是将输入的字符串在原串上倒序后返回。 2 编程: 用C语言实现函数void * memmove(void *dest,const void *src,size_t n)。memmove函数的功能是拷贝src...
华勤java笔试题 最近需要从文本中抽取结构化信息,用到了很多github上的包,遂整理了一下,后续会不断更新。 很多包非常有趣,值得收藏,满足大家的收集癖! 如果觉得有用,请分享并star,谢谢! 涉及内容包括:中...
亚信java笔试题 -API- 常用精品API接口汇总 下面列举了100多个国内常用API接口,并按照 笔记、出行、词典、电商、地图、电影、即时通讯、开发者网站、快递查询、旅游、社交、视频、天气、团队协作、图片与图像处理、...
初级java笔试题启动程序 python3 app.py 或者 python app.py 并向程序询问一些事情。 所有命令 [========] 废弃工业场地废弃车辆非生物因素通路出海事故蓄能器酸化酸度酸度酸度酸雨酸声过滤器隔音声级声学性质声学...
它是一本实用的经典题册 包含corejava(基础及语法.异常.集合.线程.IO&Socket),OOAD&UML,XML,SQL,JDBC,Hibernate,Web,EJB,Spring 它是培训机构根据学员的面试情况而汇总的一本经典之作。
java笔试题算法 软件安全测试用例的“词表” 单词列表、字典文件、攻击字符串、杂项数据集和概念验证测试用例以及渗透测试人员的工具集合 简介werdlists :scissors: 这个项目是一个单词列表的集合——它们主要是基于...
java笔试题算法 基本工具: 中科院NLPIR(推荐) 原名ICTCLAS,是由中科院计算所历经数年开发的分词工具,采用C++编写。 主要功能包括分词、词性标注、命名实体识别、用户词典功能,新词发现与关键词提取。 可以可视...
java笔试题算法 消歧义 (意大利语词典)萝卜田。 这也是一个混乱的地方,在那里绘制了技巧和模拟。 (计算机科学)用 Java 编写的统计、数据挖掘和机器学习库。 网上试试 构建状态 文档 是完全用 Java 编写的丰富的...
初级java笔试题Scala乔斯 Scalagios 是一组用于处理来自 . 首先,Scalagios 提供了用于您自己的基于 Java 虚拟机的软件的库。 但是也有一些用于基本数据处理任务的命令行工具。 Scalagios 由四个子项目组成: ...
java笔试题算法Java 中的基本拼写纠正 我最近遇到了一篇关于基本拼写更正的热门文章,网址为 Peter Norvig 在 21 个 Python 代码中实现了一个聪明的算法,现在还有许多其他语言的实现。 我首先注意到第一个 Java ...
初级java笔试题很棒的基本操作系统 一个精选的适用于基本操作系统的很棒的应用程序、工具和闪亮的东西的列表。 说明: :check_mark_button: 意味着它可以在AppCenter 中找到。 您可以点击图标在 AppCenter 中...
java最难笔试题代码混合文本的语言识别 (LID) 这是一个词级语言识别工具,用于识别用罗Maven字编写并与英语混合的语言(如印地语等)的代码混合文本。 在更广泛的层面上,我们利用经过 MALLET 训练的 ML 分类器来...
2 、C++典 面试宝典( 林锐《高质量编程第三版》 ) 、C++ primer、 、 Thinking in C++ 。 。 n 说明: 1 、部分C++ 语言面试题中可能会参杂部分和 C 相关的知识,为了保 持题目的灵活性故保留,但选题最终还是会以 ...