切换语言为:繁体

你不知道的原型到原型链再到原型模式

一. 原型我的理解是,原型是一个对象。是一个什么对象呢?是一个模板对象。其他对象可以通过这个模板对象继承属性和方法。假设有两个对象 B 和 A,B 对象继承了 A 对象,那么 A 就是 B 的原型。我们通过这种机制实现了对象之间的共享...

通过 Socket 以及 Netty 两种方式...

前言实现客户端与服务端间通信,在传输层协议 TCP 或 UDP 的基础上,定义客户端与服务端都能识别信息的一套规则:一方进行编码,另一方进行解码,这便是【协议】。在 Redis 中,定义了简单的 RESP(REdis Serializ...

程序的运行过程原来是这样!

程序的运行过程原来是这样!

计算机的设计目标是让程序高效、稳定、安全的运行,因此一个程序的运行涉及操作系统和几乎所有计算机核心硬件。对于计算机初学者而言,简单了解一个程序的运行过程可以更好的理解操作系统、计算机组成等专业课程从源代码到机器指令在了解程序是怎么执行...

Tomcat源码解析,深入探索:Tomcat 类加载机制底层逻辑!

Tomcat源码解析,深入探索:Tomcat ...

前言在探究 Tomcat 类加载机制之前,让我们重温一下 Java 默认的类加载器,加深对其的理解。 如同作者在《深入理解 Java 虚拟机》第二版中所言,类加载机制对于理解 Java 运行时环境至关重要。什么是类加载机制Java 虚...

Redis数据结构的底层原理及应用场景

介绍redis是一种常用的内存数据库,对于使用者如果能从底层了解到各种数据类型的底层原理,可以让我们能在特定的业务场景下选择正确的数据类型。同时redis数据类型也是面试中频繁出现的面试题,接下来大家可以带着以下几个问题来阅读整篇文章...

《黑神话》是什么编程语言开发的?不是C++!

《黑神话》是什么编程语言开发的?不是C++!

最近看到很多人讨论这个,也有一些分析的文章,但是我认为最靠谱的还是来自知乎的一篇分析, 作者把黑神话逆向,解包之后,得出的结论是:黑神话的脚本方案是魔改的USharp,自己实现了mono/clr/il2cpp的运行模式,且支持全平台(...

Redis过期时间机制底层原理以及AOF、RD...

在 Redis 中,键的过期时间设计与实现是一个重要的功能,这使得 Redis 可以自动删除在指定时间后不再需要的键。下面详细介绍 Redis 过期时间的设计和实现,包括设置过期时间、过期键的存储结构、过期键的删除策略等。1. 设置过...

深入解析Java中的ReentrantLock...

Java中的ReentrantLock是java.util.concurrent.locks包中的一个核心类,广泛应用于高并发场景中。相比于传统的synchronized关键字,ReentrantLock提供了更灵活的锁操作控制。本文...

从索引的结构「B+树」角度分析为什么索引匹配按...

最左匹配原则是B+树索引的一个重要特性,它指的是在使用复合索引(即包含多个列的索引)时,查询条件必须从索引的最左边列开始才能利用索引。下面我们从B+树索引的结构角度来解释为什么会有最左匹配原则。B+树索引结构B+树索引是一种广泛使用的...

SpringBoot Gateway的前置过滤...

Spring Cloud Gateway 基于WebFlux框架使用非阻塞API。它主要通过路由定义来决定请求如何被处理。每个路由可以指定一个或多个过滤器,这些过滤器可以修改请求和响应。前置过滤器:这些过滤器在请求实际被路由到下游服务...