0%

Java中重写和重载的区别?

Java中重写和重载的区别?

联系: 名字相似 都是多个同名方法

重载 在同一个类之中发生的

重写 继承中,子类重写父类方法

1 目的差别

2 语法差别

怎样声明一个类不会被继承,什么场景下会用?

final修饰的类不能有子类 大部分都是出于安全考虑

String举例

描述一下Object类中常用的方法?

参照面向对象章节toString hashCode equals clone finalized wait notify notifyAll … …

解释每个方法的作用

toString 定义一个对象的字符串表现形式 Object类中定义的规则是 类的全路径名+@+对象的哈希码 重写之后 我们可以自行决定返回的字符串中包含对象的那些属性信息 …

clone >>>返回一个对象的副本 深克隆 浅克隆 原型模式 重写时实现Cloneable

finalized GC 会调动该方法 自救

Hashmap为什么要使用红黑树?

在jdk1.8版本后,java对HashMap做了改进,在链表长度大于8的时候,将后面的数据存在红黑树中,以加快检索速度

红黑树虽然本质上是一棵二叉查找树,但它在二叉查找树的基础上增加了着色和相关的性质使得红黑树相对平衡,从而保证了红黑树的查找、插入、删除的时间复杂度最坏为O(log n)。加快检索速率。