自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 享元模式(Flyweight Pattern)

享元模式强调的是共享对象,不共享对象的行为。通过共享对象来优化内存使用,尤其适用于有大量相似对象的场景。它通过分离对象的内部状态和外部状态,实现了内部状态的内存复用,减少了对象创建的开销。在需要管理大量细粒度对象的应用中,享元模式是一个非常有效的解决方案。

2025-01-24 11:44:07 296

原创 代理模式(Proxy Pattern)

这些不同类型的代理模式根据应用场景和需求各自发挥作用,以上只是常见的几种情况。比如:Spring AOP使用了动态代理模式+自定义注解实现的切面编程;JavaRMI Java平台之间的远程方法调用;RPC框架实现跨平台的远程过程调用。代理模式的思想不仅仅是代码的编写,比如服务器的正向代理和反向代理。代理对象同样可以起到服务访问日志记录(审计);请求服务器只知道代理服务器的IP,对于目标服务器起到安全保护,同时可以设置IP的黑白名单和限流等;服务器网络之间的解耦。

2025-01-24 09:58:45 1009

原创 策略模式(Strategy Pattern)

策略设计模式定义了一系列算法(策略),将每个算法封装到独立的策略类中,并通过上下文类动态地选择和使用不同的策略,从而让算法的变化独立于使用算法的客户端。

2025-01-23 16:55:50 338

原创 责任链模式(Chain of Responsibility)

责任链模式(Chain of Responsibility)是一种行为设计模式,其核心在于将多个处理对象连接成一条链,允许请求沿链传递,直到有一个处理者能够处理该请求,从而实现请求的解耦和动态的处理顺序管理,并且处理者易于扩展,使得程序更加灵活。

2025-01-23 16:32:17 702

原创 观察者模式(Observer Pattern)

观察者模式(Observer Pattern)是一种行为设计模式,它定义了对象间的一对多依赖关系,使得当一个对象状态发生改变时,所有依赖于它的对象都会自动收到通知并更新,从而实现对象之间的松耦合和动态响应,同时便于观察者的扩展。

2025-01-23 15:14:56 464

原创 分库分表的问题

2025-01-07 10:46:27 114

原创 方法中传参的问题(浅拷贝和深拷贝)

与浅拷贝(Shallow Copy)不同,浅拷贝只复制对象的基本数据类型字段,而引用类型字段仍然指向同一个对象。深度拷贝确保原始对象和拷贝对象在内存中是完全独立的。

2025-01-02 18:06:54 191

原创 Set集合

【代码】Set集合。

2024-08-05 20:50:31 265

原创 List集合

值无意义,会让代码难以维护比如忘记做判空处理就会导致空指针异常。等)或者手动实现线程安全的方法来提供安全的多线程操作支持。已经被淘汰,推荐使用并发集合类(例如。中可以存储任何类型的对象,包括。随着 Java 并发编程的发展,内部基于动态数组实现,比。

2024-08-05 20:48:42 628

原创 Java 魔法类 Unsafe 详解

Java 魔法类 Unsafe 详解 | JavaGuide

2024-08-05 17:14:08 331

原创 BigDecimal 详解

具体参考:

2024-08-05 17:02:12 208

原创 Java 代理模式详解

相比于静态代理来说,动态代理更加灵活。我们不需要针对每个目标类都单独创建一个代理类,并且也不需要我们必须实现接口,我们可以直接代理实现类(说到动态代理,Spring AOP、RPC 框架应该是两个不得不提的,它们的实现都依赖了动态代理。那个人在这里就可以看作是代理你的代理对象,代理的行为(方法)是如何处理事情。上面我们是从实现和应用角度来说的静态代理,从 JVM 层面来说,实际应用场景非常非常少,日常开发几乎看不到使用静态代理的场景。3.3. JDK 动态代理和 CGLIB 动态代理对比。

2024-08-05 16:52:28 330

原创 Java 反射机制详解

(泛型参数的安全检查发生在编译时)。另外,反射的性能也要稍差点,不过,对于框架来说实际是影响不大的。如果说大家研究过框架的底层原理或者咱们自己写过框架的话,一定对反射这个概念不陌生。:可以让咱们的代码更加灵活、为各种框架提供开箱即用的功能提供了便利。:让我们在运行时有了分析操作类的能力,这同样也增加了安全问题。,主要是因为它赋予了我们在运行时分析类以及执行类中方法的能力。

2024-08-05 16:23:24 177

原创 Java 序列化详解

对于 Java 这种面向对象编程语言来说,我们序列化的都是对象(Object)也就是实例化后的类(Class),但是在 C++这种半面向对象的语言中,struct(结构体)定义的是数据结构类型,而 class 对应的是对象类型。OSI 七层协议模型中的应用层、表示层和会话层对应的都是 TCP/IP 四层模型中的应用层,因此,序列化协议属于 TCP/IP 协议应用层的一部分。Kryo 是一个高性能的序列化/反序列化工具,由于其变长存储特性并使用了字节码生成机制,拥有较高的运行速度和较小的字节码体积。

2024-08-05 16:17:31 1116

原创 Java值传递

引用传递看似很好,能在方法内就直接把实参的值修改了,但是,为什么 Java 不引入引用传递呢?Java 中将实参传递给方法(或函数)的方式是。方法的定义可能会用到。

2024-08-05 15:57:56 172

原创 Vue 笔记

=> 双向数据绑定是对一方数据进行修改,另一方随着变化。==> v-show是通过display:none 隐藏来实现。为HTML标签绑定属性值,如设置 href , css样式等。根据条件展示某元素,区别在于切换的是display属性的值。条件性的渲染某元素,判定为true时渲染,否则不渲染。列表渲染,遍历容器的元素或者对象的属性。在表单元素上创建双向数据绑定。为HTML标签绑定事件。

2023-11-30 18:52:28 447

原创 AJAX 笔记

axios({ url: '目标资源地址', method:'请求方法 ', data:{ //==》get:可以不写,默认为get,查询参数用params 参数名:值, // post:必须要写, } }).then((result) =>{ // 对服务器返回的数据做后续处理 })语法:在then方法的后面,通过点语法调用catch方法,传入回调函数并定义形参。接口:使用AJAX和服务器通讯时,使用的URL,请求方法,以及参数。请求方法:对服务器资源,要执行的操作。使用 axios 函数。

2023-11-30 18:51:53 443

原创 jquery 笔记

(function () { /*使用dom对象获取id是myDiv的标签 获取标签体:dom对象.innerHTML 设置标签体:dom对象.innerHTML = 新的标签体;//jQuery对象不能使用dom对象的属性和方法 //2.jQuery对象-->dom对象:脱马甲,取出jQuery数组中的dom对象 var d1 = $myDivEle[0];获取A元素的同级B元素: $("A").siblings("B")获取所有的兄弟。获得属性名 以值 結尾 元素: $("A[属性名$=值]")

2023-11-30 18:51:13 933

原创 mybatis报错

元素类型为 "configuration" 的内容必须匹配 "(properties?,settings?

2023-11-27 20:08:13 428

原创 java.lang.ClassCastException: 过滤器异常

12-Nov-2023 19:32:51.290 严重 [RMI TCP Connection(4)-127.0.0.1] org.apache.catalina.core.StandardContext.filterStart 启动过滤器异常。报错原因:@WebServlet 写成了@WebFilter 导致的的过滤器异常。

2023-11-12 19:42:18 447

原创 接口的理解

接口

2023-11-07 18:44:45 55

原创 抽象的理解

抽象

2023-11-07 18:43:43 69

原创 向上转型、向下转型

向上转型、向下转型

2023-11-07 18:42:47 72

原创 类与类之间的关系

依赖(“use a”):如果一个类的方法操作另一个类的对象,我们就说一个类依赖于另一个类. order(Teacher t)聚合(“has a”):一个对象包含另一个对象,叫聚合.Student{Address addr;继承(“is a”):表示特殊和一般的关系.

2023-11-07 18:41:24 63

原创 访问权限修饰符

protected 受保护的 同包,继承 包内好友,父子友好。默认的 同一包 包内友好。private 私有的 本类中访问。public 公共的 所有类可以访问。

2023-11-07 18:39:55 61

原创 Super

如果父类还有更上级的父类,就会先调用最高父类的构造方法,再逐个依次地将所有继承关系的父类构造方法全部执行;只能在子类构造方法中调用,且必须放在第一行代码位置。如果父类的构造方法执行失败,那么子类的对象也将无法实例化。二、 super(形参): 调用父类的构造方法。必须先执行父类的构造方法,然后再执行子类的构造方法;三、 super:指向当前对象的父类对象。一、super关键字的两种用法。

2023-11-07 18:39:16 66

原创 继承的理解

继承:由现有类派生出新类的过程;现有类称为基类或父类,新类称为派生类或子类。父类最普遍的,最一般的,查看子类比父类更具体,下一层会比上一层更具体。子类会继承父类中非私有的属性和非私有的方法。class 子类 extends 父类 {2.继承实现方式 extends。1.继承 --》代码的重用。//基类非私有的属性。//基类非私有的方法。//本类的属性和方法。

2023-11-07 18:38:32 48

原创 构造方法:

构造方法

2023-11-07 18:36:11 49

原创 封装 的概念

封装

2023-11-06 19:22:09 59

原创 数组 二维数组

2023-11-06 19:20:06 59

原创 java方法定义

2023-11-06 19:17:02 53

原创 逻辑与、或、取反的理解

2023-11-06 19:14:48 133

原创 趣味题 java基础题

1.定义一个 int 型的一维数组,包含 10 个元素,分别赋一些随机整数,然后求出所有元素 的最大值,最小值,平均值,和值,并输出出来。 2.定义一个 int 型的一维数组,包含 10 个元素,分别赋值为 1~10, 然后将数组中的元素 都向前移一个位置,即,a[0]=a[1],a[1]=a[2],…最后一个元素的值是原来第一个元素 的值,然后输出这个数组。 3. 定义一个 int 型的一维数组,包含 40 个元素,用来存储每个学员的成绩,循环产生 40 个 0~100 之间的

2023-11-06 19:10:07 73

原创 趣味题 老鼠偷食物

老鼠C说:“我没有偷奶酪”老鼠D说:“其实有没偷奶酪的”有老鼠报告头领,一窝老鼠的头领派四只小老鼠“块出去偷食物。结果它们都带回了东西。它们把东西放在一起,向头领报告。头领问道:“你们都偷到了什么啊?老鼠A说:“我们都偷了奶酪”老鼠B说:“我只偷了一颗樱桃”说它们之中只有一只说了实话哪只老鼠说了实话?

2023-11-06 19:06:39 101

原创 多态性的相关概念

多态分为编译时多态和运行时多态。其中编译 时多态是静态的,主要是指方法的重载,它是根据参数列表的不同来区分不同的函数,通过编译之后会变成两个不同的函数,在运行时谈不上多态。而运行时多态是动态的,它是通过动态绑定来实现的,也就是我们平常所说的多态性。指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。①方法的重载 ②通过继承机制而产生方法覆盖 ③通过接口实现方法覆盖。1)多态存在的三个必要条件。2)实现多态性的三种形式。

2023-11-06 19:02:47 69

原创 静态代码块 、构造代码块、构造方法的执行顺序

1.静态代码块 2.构造代码块3.构造方法的执行顺序是1>2>3;明白他们是干嘛的就理解了。 1.静态代码块:是在类的加载过程的第三步初始化的时候进行的,主要目的是给类变量赋予初始值。 2.构造代码块:是独立的,必须依附载体才能运行,Java会把构造代码块放到每种构造方法的前面,用于实例化一些共有的实例变量,减少代码量。 3.构造方法:用于实例化变量。 1是类级别的,2、3是实例级别的,自然1要优先23.在就明白一点:对子类得主动使用会导致对其父类得主动使用,所以尽管实例化的是子类,但也会导

2023-11-06 18:59:38 61

原创 java重写要求

两小:子类返回类型小于等于父类方法返回类型,子类抛出异常小于等于父类方法抛出异常,子类访问权限大于等于父类方法访问权限。两同:方法名、参数类型相同;

2023-11-06 18:58:19 53

原创 单例(Singleton)模式

单例(Singleton)模式:单例模式确保某一个类只有一个 实例,而且该类只能是自己 实例化自己并向其他类公开 这个实例的对象创建 模式。外部类不能实例化一个该类的对象,所以只能用Static 的方法,提供给其他类调用,返回此单例类唯一的实例。确保只能由自己创建,避免外部创建实例或者被子类继承从而创造额外实例;* 定义一个私有静态的该类的实例作为该类的数据域。确保一个类只能有一个实例;采用单例模式的类:根据单例模式知道其要满足以下三点。3. 并向其他类提供这个实例类。1. 确保某一个类只有一个实例。

2023-11-06 18:57:02 58

原创 java中重载和重写的区别:

2.重写:参数列表必须与被重写的方法的相同;返回的类型必须与被重写的方法的相同;访问修饰符的限定必须大于被重写的方法的访问修饰符(public>protected>default>private);重写方法一定不能抛出新的检查异常或者重写的方法申明更加宽泛的检查异常;1. 重载:必须就有不同的参数列表;可以有不同的返回类型;可以有不同的访问修饰符;可以抛出不同的异常;

2023-11-06 18:56:15 66

原创 如果对象的引用被置为null,垃圾收集器什么时候释放对象占用的内存?

2023-11-06 18:55:02 165

单例(Singleton)模式

单例设计模式

2023-11-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除