面试题
文章平均质量分 92
诚恳的⑥亿
与其抱怨黑暗,不如提灯前行
展开
-
Redis基础面试题
Redis 中的事务是一组命令的集合,是 Redis 的最小执行单位。它可以保证一次执行多个命令,每个事务是一个单独的隔离操作,事务中的所有命令都会序列化、按顺序地执行。服务端在执行事务的过程中,不会被其他客户端发送来的命令请求打断。它的原理是先将属于一个事务的命令发送给 Redis,然后依次执行这些命令。Redis 事务的注意点有哪些?需要注意的点有:Redis 事务是不支持回滚的,不像 MySQL 的事务一样,要么都执行要么都不执行;原创 2023-05-20 13:55:09 · 171 阅读 · 1 评论 -
并发编程面试题
单例模式中的懒汉机制中,就存在一个这样的问题。懒汉为了保证线程安全,一般会采用DCL的方式。但是单单用DCL,依然会有几率出现问题。线程可能会拿到初始化一半的对象去操作,极有可能出现NullPointException。(初始化对象三部,开辟空间,初始化内部属性,指针指向引用)在Java编译.java为.class时,会基于JIT做优化,将指令的顺序做调整,从而提升执行效率。在CPU层面,也会对一些执行进行重新排序,从而提升执行效率。这种指令的调整,在一些特殊的操作上,会导致出现问题。原创 2023-05-15 00:18:53 · 613 阅读 · 2 评论 -
Java基础面试题(JavaWeb专题)
为了更好地促进互联网的研究和发展,国际标准化组织ISO在1985 年指定了网络互联模型。OSI 参考模型(Open System Interconnect ReferenceModel),具有 7 层结构应用层:各种应用程序协议,比如HTTP、HTTPS、FTP、SOCKS安全套接字协议、DNS域名系统、GDP网关发现协议等等。表示层:加密解密、转换翻译、压缩解压缩,比如LPP轻量级表示协议。会话层。原创 2023-05-10 12:37:16 · 1071 阅读 · 1 评论 -
Java基础面试题(IO和多线程专题)
start方法是我们开启一个新的线程的方法,但是并不是直接开启,而是告诉CPU我已经准备好了,快点运行我,这是启动一个线程的唯一入口。void start() // 导致此线程开始执行;Java虚拟机调用此线程的run方法。生命周期:对象从创建到销毁的全过程线程的生命周期:线程对象(Thread)从开始到销毁的全过程创建 Thread对象就绪状态 执行start方法后线程进入可运行的状态运行状态 CPU运行阻塞状态 运行过程中被中断(等待阻塞,对象锁阻塞,其他阻塞)原创 2023-05-08 21:26:57 · 328 阅读 · 0 评论 -
Java基础面试题(面向对象和集合专题)
基本类型大小(字节)默认值封装类byte1(byte)0Byteshort2(short)0Shortint40Integerlong80lLongfloat40.0fFloatdouble80.0dDoublebooleanfalseBooleanchar2Characterboolean: int 4个字节int是基本数据类型,Integer是int的封装类,是引用类型。原创 2023-05-07 21:04:48 · 93 阅读 · 0 评论