随笔分类 -  面试资料

JAVA面试资料整理
摘要:jvm是啥? jvm是java的虚拟机,他将程序变为字节码class文件,然后通过jvm处理到操作系统平台。 class文件的加载过程:加载:查找和导入class文件 验证:验证里面的字节码文件是否符合要求 准备:给字节码文件里面的对象变量分配空间 解析:将符号引用变为直接引用 初始化操作 类加载器 阅读全文
posted @ 2020-03-12 17:44 xxcnotes 阅读(120) 评论(0) 推荐(0)
摘要:JAVA程序执行流程 JVM体系结构 内存结构 程序计数器:记录了方法之间的调用和执行情况,记住下一条jvm指令的执行地址。 每个线程都有一个计数器,是线程私有的。不会存在内存溢出。 栈:也叫栈内存,线程运行需要的内存空间。主管Java程序的运行,是在线程创建时创建,他的生命周期是跟随线程的生命周期 阅读全文
posted @ 2020-03-12 15:48 xxcnotes 阅读(126) 评论(0) 推荐(0)
摘要:哈希表 哈希表是根据关键码值(key,value)而直接进行访问的数据结构。根据key值计算出该元素的存储位置。若不存在哈希冲突,在哈希表中进行查找、删除以及增加等操作时间复杂度都是O(1)。 哈希冲突 当不同元素采用哈希函数计算得到的地址相同。即两个不同的key值计算得到了相同的地址,则为哈希冲突 阅读全文
posted @ 2020-03-11 22:13 xxcnotes 阅读(191) 评论(0) 推荐(0)
摘要:直接排序算法 将数组中的元素依次与之前的元素相比较,如果该元素小于前面的元素,则两者调换位置。时间复杂度为O(n2) for (int i = 0; i < array.length; i++) { for (int j = 0; j < i; j++){ if (array[i]<array[j] 阅读全文
posted @ 2020-03-11 13:46 xxcnotes 阅读(115) 评论(0) 推荐(0)
摘要:数组:采用一段连续的存储单元存储数据。对于指定下标的查找,其时间复杂度为O(1)。对于数组的插入、删除等元素移动操作则时间复杂度为O(n)。 链表:对于链表的新增、删除等操作,其时间复杂度为O(1)。对于链表的查找,时间复杂度为O(n)。 ArrayList线性表:底层是一个数组与代表数组元素个数的 阅读全文
posted @ 2020-03-11 00:34 xxcnotes 阅读(147) 评论(0) 推荐(0)
摘要:OSI参考模型 由下而上: 物理层:通信道上的原始信号传输。数据传输介质:网线。传输形式:比特流。 数据链路层:完成网络之间相邻节点的可靠传输。主要设备:网卡、网桥、交换机。传输形式:帧。 网络层:完成网络主机间的报文传输,网络层识别的地址是IP地址。主要协议:IP协议。 传输层:整个网络传输的关键 阅读全文
posted @ 2020-03-09 13:40 xxcnotes 阅读(243) 评论(0) 推荐(0)