03-JAVA设计模式-备忘录模式
备忘录模式 什么是备忘录模式 Java中的备忘录模式(Memento Pattern)是一种行为型设计模式,它允许在不破坏封装性的前提下捕获一个对象的内部状态,并在该对象之外保存这个状态,以便以后可以将对象恢复到原先保存的状态。 主要角色包括: 发起者(Originator):需要保存和恢复状态的对象。它记录当前时刻的内部状态信息,提供创建备忘录和恢复备忘录数据的功能,并可以访问备忘录里的所有信息。备忘...
后端面试真题--Java篇
Java基础篇 Java基础JVM框架1、Spring2、MyBaits3、MySQL4、Redis5、Tomcat6、Kafka Java基础 1、String类能否被继承,为什么? 2、Java中的几种基本数据类型,各占多少字节 3、String、StringBuffer、StringBuilder区别 4、ArrayList和LinkedList区别,数组和链表各自的时间复杂度? 抽象类和接口的区...
Java后端中如何随意接收参数
目录 一、参数名相同 二、参数名不同,使用@RequestParam注解 一、参数名相同 test控制器 @RequestMapping("/test") public String test(Model model){ model.addAttribute("id","19999"); model.addAttribute("name","zhangsan"); return "index"; } ...
java 自动加密解密RequestBodyAdvice和RequestBodyAdvice
自定义注解 H2O is是液体。 2 运算结果是 1024. 插入链接与图片 链接: link. 图片: 带尺寸的图片: 居中的图片: 居中并且带尺寸的图片: 当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。 如何插入一段漂亮的代码片 去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片. // An highlighted blockvar foo = 'bar'; 生成...
java算法day5
匀分布在数组中,以减少冲突(两个键映射到同一个索引)的可能性。 数组: 哈希表底层通常是一个数组,数组的每个槽位可以存储一个或多个键值对。 冲突解决: 当两个或更多的键哈希到同一个索引时,会发生冲突。Java的HashMap通过链表或红黑树来解决冲突: 链地址法(Separate Chaining):在发生冲突时,元素将被添加到该索引处的链表中。从Java 8开始,当链表长度超过一定阈值(默认为8)时,链...
动手模拟 java Flux
MyFluxTest.java: import java.util.ArrayList;import java.util.List; public class MyFluxTest { public static void main(String[] args) { List<String> names = new ArrayList<>(); names.add( "张三" ); names.add(...
1 Java 泛型
+){ String item = (String)arrayList.get(i); Log.d("泛型测试","item = " + item);} 毫无疑问,程序的运行结果会以崩溃结束: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String ArrayList 可以存放任意类型,...
03-JAVA设计模式-访问者模式
象结构(Object Structure): 通常包含元素的集合,并提供一个方法,使得访问者可以访问其元素。 常见应用场景: XML文档解析器设计编译器的设计复杂集合对象的处理 示例 Element.java // 元素接口public interface Element { void accept(Visitor visitor);} Visitor.java // 访问者接口public int...
javascript中如何判断this的指向
在JavaScript中,判断`this`的指向是非常重要的,因为它决定了函数在执行时所引用的对象。下面是几种常见的判断`this`指向的情况: 1. 默认绑定:当一个函数独立调用时,`this`会绑定到全局对象(在浏览器环境中通常是`window`对象)。 ```javascript function foo() { console.log(this); } foo(); // 输出:window ...
JavaScript 初学者的 Promise
介绍 在 JavaScript 中使用异步代码时,有时需要等待代码返回数据,然后再进一步处理数据。 例如:读取文件需要一些时间,或者从服务器获取数据可能需要一些时间,并且由于这是异步任务,因此它会被委托。 然而,在我们可以在代码中处理和执行任何进一步操作之前,我们需要这些数据。这就是 Promise 非常有帮助的地方。 什么是承诺? 在引入 Promise 之前,管理异步操作是使用回调完成的。 回调是作...