加载中
java 面试知识点笔记(十四)异常体系

问:Error和Exception的区别? ps:Throwable上层是Object Error:程序无法处理的系统错误,编译器不做检查 Exception:程序可以处理的异常,捕获后可能恢复 RuntimeException:不可预知的,...

2019/05/22 17:09
133
java 面试知识点笔记(十三)多线程与并发-原理 下篇

java线程池,利用Exceutors创建不同的线程池满足不同场景需求: newSingleThreadExecutor() 创建一个单线程的线程池。这个线程池只有一个线程在工作,也就是相当于单线程串行执行所有任务。如...

2019/05/22 11:51
45
java 面试知识点笔记(十二)多线程与并发-原理 中下篇

问:synchronized和ReentrantLock的区别? ReentrantLock(可重入锁) 位于java.util.concurrent.locks包(著名的juc包是由Doug lea大神写的AQS抽象类框架衍生出来的应用) 和CountDownLatc...

2019/05/21 17:27
20
java 面试知识点笔记(十一)多线程与并发-原理 中上篇

自适应自旋锁:(java6引入,jvm对锁的预测会越来越精准,jvm也会越来越聪明) 自选次数不再固定 由前一次在同一个锁上的自旋时间及锁拥有者的状态来决定(如果在同一个锁对象上自旋等待刚刚成...

2019/05/21 10:16
23
java 面试知识点笔记(十)多线程与并发-原理 上篇

问:线程安全问题的主要诱因? 存在共享数据(也称临界资源) 存在多条线程共同操作这些共享数据 解决方法:同一时刻有且只有一个线程在操作共享数据,其他线程必须等到该线程处理完数据后再...

2019/05/20 14:33
354
java 面试知识点笔记(九)多线程与并发 下篇

问:线程有哪些状态? 新建(new):创建后尚未启动的线程的状态(新创建的线程但还没有调用start方法) 运行(Runnable):包含Running和Ready(Running线程位于可运行线程中,等待调度选中...

2019/05/17 13:30
39
java 面试知识点笔记(八)多线程与并发 中篇

问:如何给run()方法传参? 构造函数传参 成员变量传参 回调函数传参 问:如何实现处理线程的返回值? 主线程等待法(实现简单,缺点是需要自己写等待逻辑,当等待变量多时代码臃肿,而且无法...

2019/05/17 11:20
19
java 面试知识点笔记(七)多线程与并发 上篇

问:进程和线程的区别? 进程是资源分配的最小单位,线程是CPU调度的最小单位 所有与进程相关的资源,都被记录在PCB中 进程是抢占处理器的调度单位;线程属于某个进程,共享其资源 线程只由堆...

2019/05/16 18:03
80
java 面试知识点笔记(六)垃圾回收 下篇

问:Object的finalize()方法的作用是否与C++的析构函数作用相同? 与C++的析构函数不同,析构函数调用是确定的,而finalize是不确定的 将未被引用的对象放置于F-Queue队列(垃圾收集器确定一...

2019/05/16 17:14
11
java 面试知识点笔记(五)垃圾回收 中篇

Stop-the-World JVM由于要执行GC而停止了应用程序的执行(处于stop-the-world的状态时,除了GC的线程以外的所有线程都处于等待状态,知道GC完成) 任何一种GC算法中都会发生 多数GC优化通过减...

2019/05/16 15:04
52
java 面试知识点笔记(四)垃圾回收 上篇

问:对象判定为垃圾的标准? 没有被其他对象引用 问:对象判定为垃圾的算法? 引用计数算法 通过判断对象的引用数量来判断对象是否可以被回收 每个对象实例都有一个引用计数器,被引用则+1,...

2019/05/15 11:54
92
java 面试知识点笔记(三)底层知识 jvm 内存模型 下篇

上一篇讲完了java内存模型中线程私有部分(程序计数器、虚拟机栈、本地方法栈),这篇讲下所有线程公有部分 问:元空间(MetaSpace)和永久代(PermGen)的区别? 元空间使用本地内存,而永久代使...

2019/05/15 11:25
44
java 面试知识点笔记(二)底层知识 jvm 内存模型 上篇

问:你了解java的内存模型嘛? 内存简介: 地址空间划分 内核空间(主要是操作系统程序和C运行时的空间,包含链接硬件、调度程序、提供联网、虚拟内存等逻辑和基于C的进程) 用户空间(java实...

2019/05/14 17:15
46
java 面试知识点笔记(一)底层知识 jvm相关

问:谈谈你对java的理解? 平台无关性(一处编译多处运行) GC(垃圾回收机制) 语言特性(泛型、反射、lambda表达式) 面向对象(封装继承多态) 类库(集合、网络库、并发库、nio) 异常处...

2019/05/14 13:56
57
Linux 面试知识点笔记

问:linux的体系结构? 体系结构主要分为用户态(用户上层活动)和内核态 内核:本质是一段管理计算机硬件设备的程序 系统调用:内核的访问接口,是一种能再简化的操作 公用函数库:系统调用...

2019/05/13 16:08
255
Redis 面试知识点笔记(七)pipeline及主从同步、集群

问:redis的pipeline有什么好处? 前面做测试数据的时候用到 cat /tmp/redisTest.txt | /redis-5.0/src/redis-cli -h 127.0.0.1 -p 6379 --pipe 就是一个pipeline管道批量执行指令,可以节省...

2019/05/13 15:21
507
Redis 面试知识点笔记(六)Redis如何做持久化

问:Redis如何做持久化 AOF (Append-Only-File) 持久化:保持写状态 记录下除了查询以外的所有变更数据库状态的指令 以append的形式追加保存到aof文件中 默认redis.conf 是关闭的 always 总是...

2019/05/13 14:04
70
Redis 面试知识点笔记(五)如何通过Redis 实现异步队列

问:如何使用redis做异步队列 1.使用List作为队列,rpush生产消息,lpop消费消息 缺点:没有等待队列里有值就立刻消费 弥补:可以通过在应用层sleep机制去调用lpop重试 2.BLPOP key [key ......

Redis 面试知识点笔记(四)如何通过Redis 实现分布式锁

问:如何通过Redis 实现分布式锁? 首先要明确分布式锁需要解决的问题: 互斥性(任意时刻只能有一个客户端获取锁) 安全性(锁只能由持有该锁的客户端删除,不能别其他客户端删除) 死锁(获...

2019/05/13 10:43
26
Redis 面试知识点笔记(三)从海量数据里查询某一固定前缀的key

问:从海量数据里查询某一固定前缀的key有哪些方法? 使用keys pattern keys指令一次性返回所有匹配的key,如果键的数量过大,服务器会卡顿,对内存消耗和redis服务器都是隐患,对线上业务也有...

2019/05/13 10:18
140

没有更多内容

加载失败,请刷新页面

返回顶部
顶部