面试自我最总结

面试总结
https://blog.csdn.net/weixin_43495390/article/details/86533482
https://www.cnblogs.com/java1024/p/7685400.html
一、map总结
hashmap
1、hashmap(默认16,扩容之前容量的两倍)
1.7的HashMap使用的数组+链表,1.8中HashMap是数组+链表+红黑树(当数据大于8时)
hashmap中的Node[<K,V>] table,即哈希桶数组,Node是HashMap的一个内部类,实现了Map.Entry接口,本质是就是一个映射(键值对)。
hashmap在存储对象时,首先将key使用hashCode()方法得到其hashCode 值,然后再通过Hash算法的后两步运算(高位运算和取模运算)来定位该键值对的存储位置。
在多线程使用场景中,应该尽量避免使用线程不安全的HashMap,而使用线程安全的ConcurrentHashMap。
二、类、接口、抽象类
1、抽象类
抽象类中可以(但不必须)有普通的方法,抽象方法,内部变量。抽象类不能实例化对象,只能被继承!继承它的子类如果要成为普通类(能实例化对象)的话,必须全部实现其父类抽象类的全部抽象方法,否则子类也是抽象类!
2、接口
接口中只允许存在public的静态常量、抽象方法!其修饰限定符可以省略,编译器会为我们自动补全!

interface Test{
    int a = 1;
    //等价于public static final int a = 1;
    void eat();
    //等价于public abstract void eat();
}

https://www.jianshu.com/p/7cff282a2727
三、jvm的运行过程
在这里插入图片描述
jvm的运行过程:
装载、连接、初始化(对应下面三个模块)
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值