java面试重点知识总结10

1.hashCode()介绍

hashCode() 的作用是获取哈希码,也称为散列码;它实际上是返回一个int整数。这个哈希码的作用是

确定该对象在哈希表中的索引位置。hashCode() 定义在JDK的Object.java中,这就意味着Java中的任何

类都包含有hashCode()函数。

散列表存储的是键值对(key-value),它的特点是:能根据“键”快速的检索出对应的“值”。这其中就利用到

了散列码!(可以快速找到所需要的对象)

2.什么是 java序列化?

序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对

象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时

所引发的问题

3.如何实现 java 序列化?

序列化的实现,将需要被序列化的类实现Serializable 接口,该接口没有需要实现的方法,implements

Serializable 只是为了标注该对象是可被序列化的,然后使用一个输出流(如:File Output Stream)来构

造一个 Object Output Stream(对象流)对象,接着,使用 Object Output Stream 对象的 write

Object(Object obj)方法就可以将参数为 obj 的对象写出(即保存其状态),要恢复的话则用输入流。

4.什么是节点流,什么是处理流,它们各有什么用处,处理流的创建有什么特征?

  1. 节点流 直接与数据源相连,用于输入或者输出

  2. 处理流:在节点流的基础上对之进行加工,进行一些功能的扩展

  3. 处理流的构造器必须要 传入节点流的子类

5.流一般需要不需要关闭,如果关闭的话在用什么方法,一般要在那个代码块里面关闭比较好,处理流是怎么关闭的,如果有多个流互相调用传入是怎么关闭的?

  1. 流一旦打开就必须关闭,使用close方法
  2. 放入finally语句块中(finally 语句一定会执行)
  3. 调用的处理流就关闭处理流
  4. 多个流互相调用只关闭最外层的流
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值