java面试强基(14)

Java 中 IO 流分为几种? 

  • 按照流的流向分,可以分为输入流和输出流;
  • 按照操作单元划分,可以划分为字节流和字符流;
  • 按照流的角色划分为节点流和处理流。

Java IO 流共涉及 40 多个类,这些类看上去很杂乱,但实际上很有规则,而且彼此之间存在非常紧密的联系, Java IO 流的 40 多个类都是从如下 4 个抽象类基类中派生出来的。

  • InputStream/Reader: 所有的输入流的基类,前者是字节输入流,后者是字符输入流。
  • OutputStream/Writer: 所有输出流的基类,前者是字节输出流,后者是字符输出流

既然有了字节流,为什么还要有字符流? 

问题本质想问:不管是文件读写还是网络发送接收,信息的最小存储单元都是字节,那为什么 I/O 流操作要分为字节流操作和字符流操作呢?

回答:字符流是由 Java 虚拟机将字节转换得到的,问题就出在这个过程还算是非常耗时,并且,如果我们不知道编码类型就很容易出现乱码问题。所以, I/O 流就干脆提供了一个直接操作字符的接口,方便我们平时对字符进行流操作。如果音频文件、图片等媒体文件用字节流比较好,如果涉及到字符的话使用字符流比较好。

Java 中只有值传递? 

Java 中将实参传递给方法(或函数)的方式是 值传递 :

  • 如果参数是基本类型的话,很简单,传递的就是基本类型的字面量值的拷贝,会创建副本。
  • 如果参数是引用类型,传递的就是实参所引用的对象在堆中地址值的拷贝,同样也会创建副本。

 

序列化协议对应于 TCP/IP 4 层模型的哪一层? 

如上图所示,OSI 七层协议模型中,表示层做的事情主要就是对应用层的用户数据进行处理转换为二进制流。反过来的话,就是将二进制流转换成应用层的用户数据。这不就对应的是序列化和反序列化么?

因为,OSI 七层协议模型中的应用层、表示层和会话层对应的都是 TCP/IP 四层模型中的应用层,所以序列化协议属于 TCP/IP 协议应用层的一部分。

 

什么是泛型擦除? 

​ java泛型是伪泛型,在java编译期间,所有泛型信息会进行擦除。

​ 编译器在编译期间,会将动态将T擦除为Object或者将T extends xxxxx 擦除为其限定类型 xxxxx。

​ 泛型本质上是编译器行为,为了减少编译器开销,将泛型擦除为一般类。

 

 

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
强基计划数学备考十五讲pdf》是一本数学备考资料,对于参加强基计划的学生来说,具有重要的参考价值。这本资料包括了十五个章节,每个章节都涵盖了数学备考的关键知识点。 这本资料的第一章从基础的数学概念开始,介绍了数的性质、整数、有理数等基本概念。随后的几章介绍了代数、几何、概率、统计等不同领域的数学知识。每个章节都提供了大量的例题和习题,帮助学生巩固知识点。 这本资料的特点之一是内容丰富全面。它不仅涵盖了高中数学的基础知识,还包括了一些高阶的数学概念和解题技巧,可以满足不同层次的学生需求。此外,这本资料还给出了详细的解题思路和方法,有助于学生理解和掌握解题的逻辑和技巧。 另一个亮点是这本资料的实用性。它根据强基计划的考纲和要求编写,能够帮助学生有针对性地备考,提高他们的数学成绩。同时,每个章节的习题数量也很充足,让学生在复习中得到充分的练习和巩固,提高他们的解题能力。 总的来说,《强基计划数学备考十五讲pdf》是一本对于参加强基计划的学生来说非常实用的备考资料。它全面、详细地介绍了数学备考的关键知识点,帮助学生提高解题能力,提高数学成绩。对于想要在强基计划中取得好成绩的学生来说,这本资料是不可或缺的学习工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个风轻云淡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值