内容简介:最近看到CSDN上面的一篇博客** 3、HashCode 与 Equals是什么关系?
最近看到CSDN上面的一篇博客 面试必备:《Java最常见的200+面试题全解析》 , 讲解了关于 Java 体系的一些模块以及面试中的一些常见问题; 虽然最近没有要去找工作的需求, 但是巩固一下这方面的知识还是很有必要的; 后面从作者提出的问题进行自我的提问与解答, 有问题欢迎大家指出;
Java基础部分
1、JDK 和 JRE 的区别
我的理解是: 首先JDK包含三部分: 1、 程序员 编程所需要的基本类库等; 2、Java字节码的运行时环境(JRE); 3、用于对JVM进行调优查看等工具, 如 jconsole、jstack等; 而JRE仅仅为Java代码的运行提供运行时环境而已;
2、== 和 equals 的区别
== 表示两个对象的内存地址是否相等, 即: ==两遍比较的对象是不是同一个类的实例, 如果是同一个实例, 那么返回true, 如果不是则返回false; 默认java.lang.Object中的equals是基于==来实现的; 而Object子类可以重写equals方法, 来实现自己的逻辑上的等于判断; 即使两个对象不是同一个对象实例, 里面有一些数据相同也可以认为它们是相同的;
** 3、HashCode 与 Equals是什么关系?
在不使用集合的情况下, hashCode与equals没有直接关系; equals可以单独进行逻辑判断, 即使两个对象逻辑相等, hashCode也可以不一样; 反过来也成立, 即使两个对象的hashCode相同, equals方法返回值也可能不同; 但是在使用如HashMap、HashSet等结构时, 由于底层是基于桶的算法, 所以必须确保如果作为Key两个对象的equals返回true, 它的hashCode一定要相等; 如果不相等, 那么对于逻辑相同的对象作为Key去检索的时候找不到对应的Value;
4、final 在 java 中的作用
final在Java中可以修饰 类、方法、变量; 修饰类: 表示该类是一个终态类, 不允许有子类; 修饰方法: 表示该方法不能够被重写; 修饰变量: 表示该变量指向的对象不能够改变 一般定义不可变常量 如: LOGGER 或者在线程中需要引用外部变量, 则需要添加final修饰符;
5、String 属于基础的数据类型吗
String不属于基本数据类型, 它是Java中的内置的类, 底层使用char[]实现;
6、java 中操作字符串都有哪些类?它们之间有什么区别?
Java中操作字符串的类有3个: String、StringBuffer、StringBuilder; String类每次对于字符串的CURD操作都会产生一个新的字符串常量; StringBuffer与StringBuilder不会; 而StringBuffer是线程安全的, StringBuilder是线程非安全的;
7、String 类的常用方法都有那些
indexOf, substring, lastIndexOf, chatAt, equals, startWith, endWith, concat, replace, split, toLowerCase等等;
8、抽象类必须要有抽象方法吗?
这种就是更基础的了, 抽象类不一定要有抽象方法, 可以全部是实现; 不过一般没有抽象方法的抽象类都会把abstract修饰符给去掉
9、BIO、NIO、AIO 有什么区别
这个问题就比较大了, 涉及到的知识点比较多; BIO: 一般翻译为同步阻塞IO, 一旦调用了同步方法, 那么必须等待数据到达之后才会返回; 否则一直等待; NIO: 一般翻译为New IO, 或者 Non-Blocking IO; 其实也是阻塞IO, 增加了Channel、Selector以及事件机制来确保不是所有的IO操作都处于等待, 能够更加合理的利用CPU资源; 具体表现为Selector监听各个IO操作的情况, 如果有IO可读、可写之后, 就直接返回; 然后遍历所有的Channel, 哪个可读可写就调度谁; 该NIO实现依托于Linux IO模型中的多路复用机制 AIO: 就是异步非阻塞IO, 这个暂时还不是很了解实现, 明天学习一下;
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 产品数据体系建设基础:一个产品的数据体系建设
- 再看计算机体系基础
- MySQL基础篇(07):用户和权限管理,日志体系简介
- 荐 Python基础语法全体系 | 文件IO与常用文件操作模块
- 编程体系结构:Java 异常体系
- 企业安全体系架构分析:安全体系架构概述
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Hit Refresh
Satya Nadella、Greg Shaw / HarperBusiness / 2017-9-26 / USD 20.37
Hit Refresh is about individual change, about the transformation happening inside of Microsoft and the technology that will soon impact all of our lives—the arrival of the most exciting and disruptive......一起来看看 《Hit Refresh》 这本书的介绍吧!