华为od 面试八股文_Java_02_含答案 朴灿烈づ我的快乐病毒、 2024-04-20 14:17 78阅读 0赞 #### 1:重载和重写的区别 #### 重载发生在同一个类中,方法名相同、参数列表、返回类型、权限修饰符可以不同 重写发生在子类中,方法名相、参数列表、返回类型都相同,权限修饰符要大于父类方法,声明异常范围要小于父类方法,但是final和private修饰的方法不可重写 ![53ab8fc24eab4b92a04ac463224e0390.png][] #### 2:ConcurrentHashMap原如何保证的线程安全? #### JDK1.7:使用分段锁,将一个Map分为了16个段,每个段都是一个小的hashmap,每次操作只对其中一个段加锁 JDK1.8:采用CAS+Synchronized保证线程安全,每次插入数据时判断在当前数组下标是否是第一次插入,是就通过CAS方式插入,然后判断f.hash是否=-1,是的话就说明其他线程正在进行扩容,当前线程也会参与扩容;删除方法用了synchronized修饰,保证并发下移除元素安全 #### 3:了解Java的包装类型吗?为什么需要包装类? #### Java 是一种面向对象语言,很多地方都需要使用对象而不是基本数据类型。比如,在集合类中,我们是无法将 int 、double 等类型放进去的。因为集合的容器要求元素是 Object 类型。 为了让基本类型也具有对象的特征,就出现了包装类型。相当于将基本类型包装起来,使得它具有了对象的性质,并且为其添加了属性和方法,丰富了基本类型的操作。 #### 4:为 #### [53ab8fc24eab4b92a04ac463224e0390.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/20/6c1ed9e9f90c47fabeec462bb77762b1.png
相关 华为od 面试八股文_Java_03_含答案 为了能让 HashMap 存取高效,尽量较少碰撞,也就是要尽量把数据分配均匀。我们上面也讲到了过了,Hash 值的范围值-2147483648 到 2147483647,... 拼搏现实的明天。/ 2024年04月20日 14:14/ 0 赞/ 96 阅读
还没有评论,来说两句吧...