期末笔记
2022/6/27 6:23:39
本文主要是介绍期末笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
java的编译时错误和运行时错误
java中的super
- http://c.biancheng.net/view/6394.html
java中的集合与map
- java 数组和集合
- Java中HashMap的实现原理
java中的clone
- 详解Java中的clone方法
java的修饰符
https://www.runoob.com/java/java-modifier-types.html
- private修饰的方法仅限于同一个类访问,且不能被继承
- 接口里的变量都隐式声明为 public static final,而接口里的方法默认情况下访问权限为 public。
接口的default方法
https://www.liaoxuefeng.com/wiki/1252599548343744/1260456790454816
- 可被覆写
- 静态方法只能访问静态字段
Java对象类型转换和强制对象类型转换
- Java对象类型转换和强制对象类型转换
- 实例方法与引用变量实际引用的对象的方法进行绑定,这种绑定属于动态绑定,因为是在运行时由 Java 虚拟机动态决定的。例如,animal.eat() 是将 eat() 方法与 Cat 类绑定。
- 静态方法与引用变量所声明的类型的方法绑定,这种绑定属于静态绑定,因为是在编译阶段已经做了绑定。例如,animal.staticEat() 是将 staticEat() 方法与 Animal 类进行绑定。
- 成员变量(包括静态变量和实例变量)与引用变量所声明的类型的成员变量绑定,这种绑定属于静态绑定,因为在编译阶段已经做了绑定。例如,animal.name 和 animal.staticName 都是与 Animal 类进行绑定。
HashSet原理:https://cloud.tencent.com/developer/article/1618762
HashSet 的内部结构
HashSet 类继承 AbstractSet,实现 Set 接口、实现了 Cloneable 接口以及序列化 Serializable 接口~ 如:
public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable
所以,其具备 Set 的基本特性之外,也支持克隆以及序列化相关能力。
public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable { static final long serialVersionUID = -5024744406713321676L; private transient HashMap<E,Object> map; // Dummy value to associate with an Object in the backing Map private static final Object PRESENT = new Object();
从上述代码可以看出,HashSet 内部使用了 HashMap,还有一个 static final 定义的对象 PRESENT~ 具体 map 和 PRESENT 是如何使用的?我们在接下来的代码实现分析中介绍
构造函数的实现
默认构造函数源代码
/** * Constructs a new, empty set; the backing <tt>HashMap</tt> instance has * default initial capacity (16) and load factor (0.75). */ public HashSet() { map = new HashMap<>(); }
final修饰的String
- https://www.cnblogs.com/dolphin0520/p/3736238.html
- https://www.cnblogs.com/qiu00/p/13290760.html
这篇关于期末笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Mybatis官方生成器资料详解与应用教程
- 2024-11-26Mybatis一级缓存资料详解与实战教程
- 2024-11-26Mybatis一级缓存资料详解:新手快速入门
- 2024-11-26SpringBoot3+JDK17搭建后端资料详尽教程
- 2024-11-26Springboot单体架构搭建资料:新手入门教程
- 2024-11-26Springboot单体架构搭建资料详解与实战教程
- 2024-11-26Springboot框架资料:新手入门教程
- 2024-11-26Springboot企业级开发资料入门教程
- 2024-11-26SpringBoot企业级开发资料详解与实战教程
- 2024-11-26Springboot微服务资料:新手入门全攻略