logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【Java八股|第8篇】Java 异常体系详解

这一篇我们来学习 Java 面试中非常重要的一个基础知识点:异常体系。空指针异常数组越界异常类型转换异常SQL 异常文件找不到异常参数校验异常业务异常如果异常处理不好,接口可能直接报 500,前端看到一堆错误信息,用户体验很差。所以理解 Java 异常体系,不只是为了面试,也直接关系到后端项目开发。在项目中,我们经常会自定义业务异常。throw new BusinessException("用户不

文章图片
#java
【Java八股|第10篇】Java 中的包装类和自动拆装箱

这一篇我们继续学习 Java 基础中非常高频的面试题:包装类和自动拆装箱。intlongdoublebooleancharIntegerLongDoubleBooleanCharacter刚开始学习时,很多人会觉得它们差不多。int a = 10;看起来都是保存数字 10。基本类型和包装类有什么区别?什么是自动装箱和自动拆箱?为什么是true?为什么是false?包装类能不能为null?为什么数据

文章图片
#java
【Java八股|第3篇】String、StringBuilder、StringBuffer 区别详解

上一篇我们学习了String为什么是不可变的。既然StringString有什么区别?这个问题在 Java 面试中非常高频,而且经常和字符串拼接、线程安全、性能优化一起问。String和有什么区别?为什么循环拼接字符串不建议用String?和区别是什么?为什么线程安全?实际开发中应该用哪个?这一篇我们就把这三个类一次讲清楚。不一定。少量字符串拼接时,String写法更简单,而且编译器可能会优化。只

文章图片
#java
【Java八股|第4篇】HashMap 底层原理详解

前面几篇我们学习了String相关的高频面试题。HashMap。HashMap是 Java 面试中几乎绕不开的知识点。很多面试官都会从一个简单问题开始问:你说一下 HashMap 的底层原理。HashMap底层数据结构是什么?put方法大概流程是什么?为什么数组长度一般是 2 的幂?哈希冲突怎么解决?什么时候链表会转红黑树?扩容机制是什么?为什么重写equals也要重写hashCode?HashM

文章图片
#java
【知识获取与分享社区项目 | 项目日记第 16 天】从接口到 DeepSeek 流式输出:知光 RAG 问答链路设计

在平台中,用户发布的是一篇篇“知文”,内容可能是 Markdown 文档、图文笔记、长篇技术总结等。因为向量库中存储的是全站知文的切片,如果只按问题做相似度检索,可能召回其他文章里的内容。这套设计的核心不是简单接一个大模型接口,而是把“大模型回答”约束在“当前知文上下文”里。很重要,它会关闭 curl 的缓冲,让你能看到流式输出效果。这一步会返回模型生成内容的流式结果,也就是最终接口返回的。这里的

#java
【Java八股|第1篇】== 和 equals 的区别

从这一篇开始,我们进入 Java 面试八股系列。这一系列不只适合面试前背题,也适合用来补 Java 基础。很多问题看起来简单,但是如果只会一句“==比较地址,equals比较内容”,面试时很容易被继续追问。==和equals有什么区别?String使用==比较为什么可能是true?equals默认比较的是什么?为什么重写equals时通常也要重写hashCode?基本数据类型能不能调用equals

文章图片
#java#开发语言
【Java八股|第2篇】String 为什么是不可变的?

上一篇我们学习了==和equals的区别,其中反复提到了String。在 Java 面试中,String是一个非常高频的知识点。String为什么是不可变的?String不可变体现在哪里?String不可变有什么好处?为什么可以修改?字符串拼接会不会改变原来的字符串?这一篇我们就来单独梳理String不可变这个问题。在正常 Java 代码中,不能修改。虽然通过反射等非常规方式可能破坏内部结构,但这

文章图片
#java
【Java八股|第7篇】重载和重写的区别

重载和重写的区别。什么是方法重载?什么是方法重写?重载能不能只看返回值?重写时访问权限能不能变小?重写时异常能不能变大?@Override注解有什么作用?构造方法能不能重写?这一篇我们就把重载和重写从语法、使用场景、规则和面试回答完整梳理一遍。方法重载指的是:在同一个类中,可以定义多个方法名相同、参数列表不同的方法。add但是参数列表不同,所以构成重载。34.06Java 编译器会根据你传入的参数

文章图片
#java
【Java八股|第5篇】ArrayList 和 LinkedList 区别详解

上一篇我们学习了HashMap的底层原理。ArrayList和LinkedList的区别。ArrayList底层是什么?LinkedList底层是什么?为什么ArrayList查询快?为什么LinkedList插入删除不一定总是快?ArrayList扩容机制是什么?实际开发中更推荐用哪个?ArrayList查询快,增删慢;LinkedList查询慢,增删快。这句话不能说错,但它不够完整。因为Lin

文章图片
#java
【Java八股|第6篇】接口和抽象类有什么区别?

前面我们学习了 Java 集合中的HashMapArrayListLinkedList。这一篇回到 Java 面向对象基础中非常经典的问题:接口和抽象类有什么区别?什么是接口?什么是抽象类?接口和抽象类有什么区别?什么时候用接口,什么时候用抽象类?一个类可以实现多个接口吗?一个类可以继承多个抽象类吗?JDK 8 之后接口有什么变化?很多人会背:接口是 implements,抽象类是 extends

文章图片
#java
    共 20 条
  • 1
  • 2
  • 请选择