公众号
程序员世杰
公众号『程序员世杰』,就职过各互联网大厂,资深码农,专注Java后端技术栈、AIGC等领域的技术分享
展开
-
Java基础 200323
1. Java 中的设计原则?开闭原则(Open Close Principle):对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类。里氏代换原则(Liskov Substitution Principle):任何基类可以出现的地方,子类一...原创 2020-03-12 22:18:51 · 154 阅读 · 0 评论 -
Java基础 200322
1. BIO、NIO、AIO 有什么区别?2. java 中 IO 流分为几种?3. final 在 java 中有什么作用?抽象类能使用 final 修饰吗?4. java 中的 Math.round (-1.5) 等于多少?5. 什么是半双工?什么是全双工?6. 在多线程下选用什么处理大规模字符串?原创 2020-03-12 21:46:08 · 245 阅读 · 0 评论 -
Java基础 200321
1. 抽象类和接口的区别?普通类和抽象类有哪些区别?2. 抽象类必须要有抽象方法吗?抽象类能使用 final 修饰吗?3. 局部内部类和匿名内部类为什么只能访问 final 的局部变量?4. 什么是多态?原创 2020-03-12 17:50:35 · 239 阅读 · 0 评论 -
Java基础 200320
1. 什么是反射?反射的应用场景?2. 代理模式有什么用?应用场景是什么?3. 动态代理的实现方式都有什么?那种实现效率高?4. 动态代理是什么?与静态代理的区别在于?原创 2020-03-12 17:05:36 · 216 阅读 · 0 评论 -
Java基础 200319
1. 为什么要使用克隆?如何实现对象克隆?2. 深拷贝和浅拷贝区别是什么?3. 值传递和引用传递的区别是什么?4. 什么是 java 序列化?什么情况下需要序列化?如何避免序列化对象中的属性序列化?原创 2020-03-12 16:13:01 · 181 阅读 · 0 评论 -
Java基础 200318
1. throw 和 throws 的区别?2. try-catch-finally 中哪个部分可以省略?3. try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?4. 常见的异常类有哪些?5. java 异常的执行流程?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这...原创 2020-03-12 12:02:36 · 231 阅读 · 0 评论 -
Java基础 200317
1. 线程池都有哪些状态?2. 线程池中 submit () 和 execute () 方法有什么区别?3. 创建线程池有哪几种方式?4. 创建线程池的各个参数代表的含义?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有跨越式提升】面试路上,你不孤...原创 2020-03-12 10:43:43 · 226 阅读 · 0 评论 -
操作系统 200316
1. 普通文件 IO 页缓存需要复制几次?具体过程是什么?2. 常见的 IO 模型?IO 多路复用的 select、poll 和 epoll 函数额度区别?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有跨越式提升】面试路上,你不孤单!...原创 2020-03-08 11:25:15 · 240 阅读 · 0 评论 -
操作系统 200315
1. 如何动态查看服务器日志文件?2. 如何打包压缩文件?3. 修改 /test 下的 aaa.txt 的权限为属主有全部权限,属主所在的组有读写权限, 其他用户只有读的权限?4. 查找 text.txt 文件中的 abc 的位置?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知...原创 2020-03-08 10:56:31 · 174 阅读 · 0 评论 -
操作系统 200314
互斥和同步的关系?死锁产生的条件?信号量的 PV 实现?生产者消费者的代码实现?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有跨越式提升】面试路上,你不孤单!...原创 2020-03-08 10:05:23 · 248 阅读 · 0 评论 -
操作系统 200313
虚拟内存的作用与特性?虚拟内存的实现方式?分别有何种缺陷?页面置换算法?什么是中断?产生中断的方式?什么是系统调用?什么会导致用户态陷入内核态?陷阱和中断的区别?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有跨越式提升】...原创 2020-03-08 09:27:29 · 295 阅读 · 0 评论 -
操作系统 200312
1. 什么是僵尸进程?什么是孤儿进程?有什么危害?2. CPU的上下文切换有几种?系统中断进行了几次上下文切换?3. 进程的通信方式?效率最高的通信方式是什么?4. 进程调度算法有几种?应用最广泛的是什么?5. 进程和线程的区别?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,...原创 2020-03-07 21:31:14 · 193 阅读 · 0 评论 -
数据库 200311
1. 数据库从哪几方面进行调优?2. 索引优化方向?3. mysql 问题排查都有哪些手段?怎么验证 mysql 的索引是否满足需求?4. 主从复制的过程?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有跨越式提升】面试路上,你不孤单!...原创 2020-03-07 21:04:19 · 212 阅读 · 0 评论 -
数据库 200310
1. 两种常见的数据库引擎?分别具有什么特点?2. 一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 MySQL 数据库,又插入了一条数据,此时 id 是几?3. 什么是主从复制?什么是读写分离?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有...原创 2020-03-07 20:43:25 · 208 阅读 · 0 评论 -
数据库 200309
1. 索引是什么?是如何实现的?2. 索引的分类?索引失效条件?3. 索引优化方式?4. 怎么验证 mysql 的索引是否满足需求?5. 索引的底层结构是什么?说说各种的特点和缺点?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有跨越式提升】面...原创 2020-03-07 20:00:10 · 162 阅读 · 0 评论 -
数据库 200308
事务的 ACID 特性?事务并发会造成的问题?事务的隔离级别?说一下乐观锁和悲观锁?说一下 mysql 的行锁和表锁?事务的隔离级别和加锁的关系?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有跨越式提升】面试路上,你不孤单!...原创 2020-03-07 18:06:19 · 348 阅读 · 0 评论 -
数据库 200307
什么是超键?什么是主键?二者有什么关系?数据库的三范式是什么?char 和 varchar 的区别是什么?delete 和 truncate 有什么区别?谁效率更好?存储过程和函数的区别?视图的操作会对基本表产生影响吗?count(*)和 count(列名)谁的效率更高?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技...原创 2020-03-07 17:31:18 · 261 阅读 · 0 评论 -
Java面试那点事——网络200306
什么 XSS 攻击?如何预防?什么是 CSRF 攻击?如何预防?什么是 DDoS 攻击?如何预防什么是 SQL 注入攻击?如何预防?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可以让你【快速了解 Java 相关知识】,并且【短时间在面试方面有跨越式提升】面试路上,你不孤单!...原创 2020-03-03 21:14:53 · 278 阅读 · 0 评论 -
Java面试那点事——网络200305
http1.0 与 http1.1 的区别?什么是 keep-alive 模式?简单说一下 http2.0?什么是幂等性?http 的方法是否都符合幂等性?若不符合,怎么避免?https 与 http 的区别?https 加密的过程?https 是否存在安全问题?如何避免?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验...原创 2020-03-03 15:32:22 · 325 阅读 · 0 评论 -
Java面试那点事——网络200304
TCP 是如何保证可靠传输数据的?TCP 和 UDP 的区别?TCP 三次握手和四次挥手的过程?TCP 为什么需要三次握手?只进行两次会出现什么问题?第三次握手失败的情况 TCP 是如何处理的?为什么连接的时候是三次握手,关闭的时候却是四次握手?【Java 面试那点事】这里致力于分享 Java 面试路上的各种知识,无论是技术还是经验,你需要的这里都有!这里可...原创 2020-03-03 09:57:02 · 294 阅读 · 0 评论 -
Java面试那点事——网络200303
OSI 七层模型?HTTP 协议对应第几层?IP 协议呢?从一个 URL 到获取页面的过程?session 的实现原理?session 和 cookie 的关系?禁用 cookie 后对 session 的影响?forward 和 redirect 的区别?...原创 2020-03-02 20:18:13 · 278 阅读 · 0 评论 -
Java面试那点事——网络200302
内网和外网 IP 地址的区别?ABC 三类 IP 地址的划分区别:外网 IP 是全世界唯一的 IP 地址,仅分配给一个网络设备。公网 IP 地址全世界仅分配给一个网络设备(比如你在家拨号,分配给你一个 IP 地址吧,那个地址是唯一的,你用你机器做个网站,别人访问你的 IP 地址就可以连接到你的机器)内网 IP 局域网,网线都是连接在同一个 交换机上面的,也就是说它们的 IP ...原创 2020-03-02 11:57:46 · 181 阅读 · 0 评论 -
Java面试那点事——基础200119
1. 说一下 synchronized 底层实现原理?2.volatile 有是没用?synchronized 和 volatile 的区别是什么?3.synchronized 和 Lock 有什么区别?4. 说一下 atomic 的原理?5. 乐观锁的实现方式?6. 用代码实现不可重入锁?...原创 2020-01-19 21:51:39 · 258 阅读 · 1 评论 -
Java面试那点事——基础200116
并行和并发有什么区别?同步、异步、阻塞、非阻塞有什么区别?同步等同于阻塞吗?线程和进程的区别?守护线程是什么?线程有哪些状态?创建线程有哪几种方式?线程的 run () 和 start () 有什么区别?ThreadLocal 是什么?有哪些使用场景?notify () 和 notifyAll () 有什么区别?现在有 T1、T2、T3 三个线程,你怎样保证 T2...原创 2020-01-17 11:08:15 · 248 阅读 · 0 评论 -
Java面试那点事——基础200115
1. 什么是锁消除?什么是锁膨胀锁消除:对数据进行逃逸分析。对象实例都是存在于线程共享的堆中的,即便是局部变量的对象,也是存在于堆中,但是局部变量对象的引用是存在于方法栈中的,方法栈是线程私有,线程之间彼此不可见,当对于这样的引用进行加锁和释放锁的时候,其实是没有必要的,因为数据是不会逃逸出去,比如说StringBuffer的append方法,是synchronized修饰的同步方法,虚拟机检...原创 2020-01-16 11:20:19 · 343 阅读 · 0 评论 -
Java面试那点事——基础200114
1.java 容器都有哪些?2.Collection 和 Collections 有什么区别?3.List、Set、Map 之间的区别是什么?4.ArrayList 和 LinkedList 的区别是什么?5.ArrayList 和 Vector 的区别是什么?6.哪些集合类是线程安全的?7.Iterator 怎么使用?有什么特点?Iterator的 fail-fast属性是什么?8...原创 2020-01-14 21:56:06 · 1675 阅读 · 0 评论 -
Java面试那点事——基础200113
1.HashMap 和 Hashtable 有什么区别?HashMap 和 HashSet 呢?HashMap 和 Hashtable 区别:hashmap线程不安全、hashtable线程安全hashmap继承自abstractmap、hashtable继承dictionaryhashmap允许存储null键值(存一个null键和多个value是null)、hashtable不允许h...原创 2020-01-14 10:09:18 · 3006 阅读 · 1 评论 -
Java面试那点事——基础200112
1. 说一下 HashMap 的实现原理?底层实现:hashmap底层实现是:数组+链表+红黑树(链表元素大于8,并且数组长度大于64的时候,链表会转化为红黑树)判断相等:Java的所有的类都会继承object,object类有两个函数,一个是hashcode(根据直接地址返回一个整型值,object是直接返回地址),一个是equals(判断两个对象是否相等,object底层实现是==,还是...原创 2020-01-13 10:25:27 · 382 阅读 · 0 评论 -
Java面试那点事——基础200110
说一下 jvm 有哪些垃圾回收算法?标记是通过 可达性分析法,以GC Roots 对象为根节点 把引用链上的对象标记标记-清除 算法:分标记和清除两个部分,清除就是把未标记的对象清除掉。效率不高,并且产生空间碎片。复制算法:将内存分成两个部分,一个用于存储对象,一个不使用。回收的时候,把使用的内存中的对象全部复制到不使用的内存中,然后清除使用的内存,并交换二者的角色。不会产生空间碎片但...原创 2020-01-11 10:29:25 · 345 阅读 · 0 评论 -
Java面试那点事——基础 200109
1.说一下对象创建的过程?对象有哪几部分构成?虚拟机如何访问对象?(1)对象创建的过程类加载检查:在执行到new命令时,查看new后面的参数是否正确定位到常量池中的符号引用,并且该符号引用是否被正确的加载、连接和初始化。内存分配:为对象分配内存,有指针碰撞和空闲列表两种方式。指针碰撞:适用于内存完整,无碎片。内存使用和未使用中间由指针隔开,分配的时候指针移动相应的位置。空闲列表:适...原创 2020-01-10 10:29:30 · 327 阅读 · 0 评论 -
Java面试那点事——基础 200107
说一下类加载的执行过程?(1).加载:把class文件加载到内存中(2).链接(又分为:验证、准备、解析)验证:验证加载到内存的文件是否符合格式要求准备:给类变量(static修饰的变量)赋初值(系统默认值)。解析:把符合引用转变成直接引用(3).初始化:按照一定的顺序给 类变量、构造器 赋初值(代码中设定的值)Java中都有哪些类加载器?启动类加载器、扩展类加载...原创 2020-01-07 22:34:27 · 347 阅读 · 0 评论 -
Java面试那点事——基础 200106
1. 说一下 jvm 的主要组成部分?及其作用?组成部分:class loader(类加载器)、execution engine(执行引擎)、native interface(本地接口)、runtime data area(运行时数据区)作用:类加载器:把class文件加载到内存中,需要符合格式要求。执行引擎:解释命令,提交到操作系统执行本地接口:融合不同的编程语言为jav...原创 2020-01-06 17:11:32 · 431 阅读 · 0 评论 -
Java面试那点事——基础1911
1. == 和 equals 的区别?拆箱和装箱分别是什么?分别应用在什么场景?未重写的equals和== 是等价的:对于基本类型,比较的是值;对于引用类型,比较的是引用地址。但是我们可以重写equals方法,让equals方法比较我们想要比较的东西,比如说对于引用对象,不在比较引用地址而是比较内容,这里要注意的地方,第一,基本类型是不能调用equals方法的;第二引用类型的包装类都是重写了e...原创 2019-11-18 14:36:46 · 451 阅读 · 0 评论