楼上有只喵
  • 首页
  • 归档
  • 分类
  • 标签
  •   
  •   

单例模式

1. 概念1. 定义 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。 这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。它分为懒汉式和饿汉式。注意: 构造器必须私有化 对外必须获得一个公有的访问方式来获得实例。 2 优缺点优点: 在内
2023-09-26
设计模式

建造者模式

建造者模式1. 概念 定义 将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示。 使用场景 当对象有复杂的内部结构(很多属性) 当创造一个对象 需要很多步骤时 , 适合使用建造者模式 ; 当创造一个对象 只需要一个简单的方法就可以完成 , 适合使用工厂模式 优缺点 优点: 创建和使用分离 建造类之间 相互独立 , 在 一定程度上解耦 ; 缺点 : 增加类数
2023-09-26
设计模式

简单工厂模式

简单工厂模式1. 概念 定义:由一个工厂对象决定创建出哪一种对象的实例 优缺点: 优点:只需要传入一个参数,就可以获取你所需要的对象,而无需知道细节 缺点:工厂的职责过重,增加新的产品,需要修改工厂的判断逻辑,违反开闭原则 2. 代码需求: 需要根据电影类型创建电影 2.1 版本1:常规写法123456public class JavaVideo extends Video {
2023-09-11
设计模式

mysql索引常见面试题

1. mysql 为什么使用B+树? 二叉树:单边增长的场景会导致全表扫描。 红黑树:相对平衡,比二叉树性能好,大数据下,红黑树的高度过高,会造成磁盘IO频繁。 Hash: 不支持范围查找和排序 B树 VS B+树: 更高的节点利用率 B+树与B树的一个关键区别在于B+树的所有数据都存储在叶子节点,而非叶子节点只存储键值和指向子节点的指针。这样可以使非叶子节点包含更多的键值和指针,提
2023-06-13
数据库

zookeeper常见面试题

1. Zookeeper集群中有几个角色Zookeeper集群中有三个主要角色: Leader:负责处理写请求和同步数据到Followers。 Follower:处理读请求,参与选举过程。 Observer:不参与投票选举,仅同步Leader的数据,用于扩展读取性能。 2. Zookeeper如何保证数据一致性?Zookeeper使用一种称为ZAB协议(Zookeeper Atomic Br
2023-05-29

字符串旋转

2023-05-26
LeetCode

股票买卖

2023-05-26
LeetCode

二叉树算法题

1. 基本二叉树遍历1. 前序遍历(Pre-order Traversal)前序遍历的顺序是:根节点 -> 左子树 -> 右子树。 算法步骤: 访问根节点。 前序遍历左子树。 前序遍历右子树。 12345678910public class BinaryTree { // 前序遍历 - 递归 public void preOrderTraverse(TreeN
2023-05-26
LeetCode

八股文

Here's something encrypted, password is required to continue reading.
2023-05-22
八股文

java锁常见面试题

1. sychronizedSynchronized是Java中解决并发问题的一种最常用的方法,Synchronized的作用主要有三个: 确保互斥访问。确保被同步的方法或代码块在同一时刻只能由一个线程执行,其他线程必须等待该线程执行完毕后才能进入。 保证可见性。保证线程间对共享变量的修改是可见的。具体来说,当一个线程修改了共享变量的值后,synchronized 关键字确保其他线程能够立即看到
2023-05-21
Java基础
1…7891011…26

搜索

Hexo Fluid
总访问量 次 总访客数 人