自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(101)
  • 资源 (1)
  • 收藏
  • 关注

原创 TypeScript中的 K、T 、V

在TypeScript的泛型里经常会碰到一些字母,比如KTV,是不是觉得很奇怪?

2024-03-15 17:32:29 2178

原创 前端初识算法

努力是为了不平庸~算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对于算法的理解,同时吸收他人的奇思妙想,一起见证技术er的成长~

2022-10-19 18:03:10 1833 22

原创 vue3组件通信

是在单文件组件 (SFC) 中使用组合式 API 的编译时语法糖。当同时使用 SFC 与组合式 API 时该语法是默认推荐。相比于普通的

2022-09-27 10:01:10 1008 8

原创 一招解决vue页面自适应布局

vue页面自适应布局

2022-06-13 11:55:42 4131 6

原创 github提交pr

向开源项目提交自己的pr

2022-03-29 14:21:40 9717 3

原创 面向对象【包装类】

包装类用于将基本数据类型转换为对象。它们位于java.lang包中,包括Integer、Double、Boolean等。包装类的主要作用是允许在需要对象的上下文中使用基本数据类型。基本数据类型(primitive types)和包装类(wrapper classes)之间的转换是常见的操作。基本数据类型用于存储简单的数据值,而包装类则提供了对这些基本数据类型的封装。

2024-03-29 08:38:50 657

原创 面向对象【Annotation注解】

注解(Annotation)是从 JDK5.0 开始引入,以“@注解名”在代码中存在。例如:@OverrideAnnotation 可以像修饰符一样被使用,可用于修饰包、类、构造器、方法、成员变量、参数、局部变量的声明。还可以添加一些参数值,这些信息被保存在Annotation 的 “name=value” 对中。注解可以在类编译、运行时进行加载,体现不同的功能。【元注解】【修饰符】 @interface 注解名{【成员列表】• 自定义注解可以通过四个元注解@Retention。

2024-03-26 22:23:45 864

原创 面向对象【枚举类】

在Java中,使用enum定义枚举类。

2024-03-26 00:45:00 980

原创 面向对象【interface接口、抽象类与抽象方法】

接口是一种抽象的数据类型,它定义了一组方法,但没有提供方法的具体实现。在Java中,接口是一种与类类似的结构,但它只包含常量和抽象方法的定义。类可以实现一个或多个接口,从而获得接口定义的方法。使用interface关键字来定义接口,接口中的方法默认为抽象方法,可以包含常量和默认方法(在Java 8及以后版本)。// 抽象方法// 常量// 默认方法(Java 8及以后版本)

2024-03-18 23:30:00 1007

原创 面向对象【内部类】

将一个类 A 定义在另一个类 B 里面,里面的那个类 A 就称为内部类(InnerClass),类 B 则称为外部类。

2024-03-18 19:28:30 325

原创 面向对象【final关键字】

通过使用。

2024-03-15 19:42:02 812

原创 面向对象【Object类的方法】

wait(long timeout, int nanos): 使当前线程等待一段指定的时间,直到其他线程通过notify()或notifyAll()方法唤醒该线程,或指定的时间到期。与notify()和notifyAll()方法一样,调用wait()方法的线程必须拥有对象监视器的锁,否则会抛出IllegalMonitorStateException异常。方法用于使当前线程进入等待状态,直到其他线程调用notify()或notifyAll()方法唤醒该线程。,它包含一些在所有对象中通用的方法。

2024-03-14 20:00:46 390

原创 面向对象【static关键字】

静态导入是使用static关键字导入类的静态成员,使得可以直接使用静态成员而无需使用类名。静态块是用static关键字定义的一个代码块,在类加载时执行。通常用于执行静态变量的。静态变量是static关键字的一个重要用法之一。,而不是实例级别的数据。所有类的实例共享同一个静态变量的值。static关键字在单例模式的实现中也经常发挥重要作用,确保。,用于定义类级别的成员,这些成员与类的。而不是类的实例,因此它们在。

2024-03-13 00:30:00 404

原创 面向对象【代码块】

代码块是由花括号({})括起来的一组语句,用于执行特定的操作。代码块分为普通代码块、构造代码块和静态代码块,

2024-03-13 00:15:00 323

原创 面向对象特征【多态性】

多态性的优点在于它增加了代码的灵活性和可维护性。通过多态性,可以编写通用的代码,而不需要针对每个具体的子类编写特定的逻辑。这使得代码更易于扩展和维护。

2024-03-12 19:51:25 461

原创 面向对象特征【super关键字】

super关键字用于访问父类的属性和方法。它可以用于消除具有相同名称的方法在超类和子类之间的混淆。在构造函数中,super必须作为第一条语句调用。

2024-03-12 19:51:06 368

原创 面向对象特征【继承性】

B是子类,A是父类。子类可以访问父类的非私有成员,包括属性和方法。通过继承,子类还可以覆盖(override)父类的方法,以提供特定于子类的实现。继承性允许子类继承父类的属性和方法。在Java中,使用关键字extends来实现继承。通过继承,我们可以建立类层次结构,使代码更加组织有序。子类可以对从父类中继承来的方法进行改造,称为方法的。Dog类继承了Animal类,这意味着。类拥有了Animal类的。

2023-11-12 20:08:08 200

原创 面向对象【this关键字】

可以用来引用当前对象的成员变量 ,this.name 表示当前对象的 name 成员变量,而 name 表示方法参数。使用 this 可以清晰地区分两者,避免歧义。this 可以作为一个类中构造器相互调用的特殊格式。this(实参列表):调用本类的有参构造器。this():调用本类的无参构造器。

2023-11-01 00:46:36 221

原创 面向对象【构造器】

构造器是一种特殊类型的方法,它与类同名,没有返回值,并且用于在创建对象时执行初始化操作。构造器的名称必须与类名完全一致,而且不能定义返回类型,包括void。在Java中,每个类都至少有一个构造器。如果你没有明确定义构造器,Java会为你提供一个无参构造器,这个构造器什么都不做。如果你显式定义了一个或多个构造器,Java不再提供默认的构造器,因此在创建对象时需要使用你定义的构造器。构造器可以具有参数,这些参数允许你在对象创建时传递数据,以便在初始化过程中进行个性化设置。

2023-10-22 18:59:33 251

原创 面向对象特征【封装性】

封装性是OOP的四大特征(封装、继承、多态、抽象)之一,它强调将数据(属性)和操作(方法)打包成一个单一单元(类),并控制对数据的访问。通过将数据隐藏在类的内部,只能通过类的公共接口来访问,这有助于减少错误和提高代码的可维护性。举例:一个表示银行账户的类应该有高内聚,即包含与账户相关的操作如存款、取款、查询余额等,而不应该包含与其他不相关功能的操作。,一个模块的改变可能需要修改另一个模块,低耦合表示模块之间独立,一个模块的改变不会对其他模块产生太大影响。耦合是指不同模块或类之间的依赖程度。

2023-10-14 20:22:31 249

原创 面向对象【Package与Import】

包是Java中用于组织和管理类的一种机制。虽然import是可选的,但它们极大地简化了代码,因为它们允许您使用短名称引用类,而不需要使用完全限定的类名。Java还支持静态导入,允许您导入类中的静态成员,而不需要使用类名称来调用它们。要在Java中使用包,可以通过import语句将包中的类引入到您的代码中。导入一个类是最常见的使用import的情况。这将允许您使用该包中的所有类,但需要注意潜在的类名冲突问题。在Java中,要创建一个包,只需在类文件的顶部使用。了程序各个对象间的通信方式,降低了程序的耦合性。

2023-10-01 18:08:59 290

原创 面向对象【递归方法】

递归是一种解决问题的方法,其中一个函数调用自身以解决较小的实例,直到达到基本情况(停止条件),然后开始返回结果。递归可以让我们更容易地解决复杂的问题,因为它允许我们将问题分解成更小的子问题。当一个递归函数被调用时,它将问题分解成较小的子问题,然后继续调用自身来解决这些子问题。然后,递归函数开始返回结果,将结果合并以解决原始问题。在递归调用中,每个函数调用都有自己的局部变量和执行上下文,这些信息在递归的不同层次之间传递。递归在许多计算机科学和编程问题中都有广泛的应用。

2023-09-29 17:37:02 244

原创 面向对象【对象数组的使用与内存分析、方法重载、可变个数形参】

可变个数的形参使用三个点(…)来表示,放在方法的参数列表中的最后一个参数位置。存储对象引用的数组。它允许您在单个数组中存储多个对象,并通过索引访问和操作这些对象。创建一个 Student 学生类,该类可以具有学生的属性(例如姓名、年龄等)。方法的重载(Method Overloading)是指在同一个类中,允许存在。,但这些方法的参数列表必须不同。方法的重载是通过改变方法的。使用可变个数的形参来定义一个方法,这样可以接受。创建一个学生对象数组,并对其进行初始化和操作。来实现的(不包括参数名称)。

2023-07-30 21:44:36 258

原创 面向对象【成员变量与局部变量、方法声明与作用】

当声明成员变量时,如果没有显式地对其进行初始化,则会赋予默认值(例如,整数类型的成员变量默认值为0)。Java中的方法支持多态性,即相同的方法名可以被不同的类实现,并且能够根据运行时对象的类型自动选择正确的方法。在Java中,如果没有显式地初始化成员变量,则它们将自动地初始化为其类型的默认值,如int类型变量默认值为0,引用类型变量默认值为null。它们与方法一样属于类的成员,不同之处在于,它们存储在对象(堆)中而不是栈中,并且每个对象都有自己的一组值。方法名是方法的标识符,用于在程序中调用该方法。

2023-06-24 20:14:08 663

原创 面向对象【类的实例化与对象内存解析】

局部变量表存放 了编译期可知长度的各种基本数据类型(boolean、byte、char、short、int、 float、long、double)、对象引用(reference 类型,它不等同于对象本身,是 对象在堆内存的首地址)。当声明一个新的变量使用现有的对象进行赋值时(比如 p3 = p1),此时 并没有在堆空间中创建新的对象。创建一个类的多个对象(比如 p1、p2),则每个对象都拥有当前类的一套 “副本”(即属性)。对象的属性存放在堆空间中。具有相同特征的事物的抽象描述,是抽象的、概念上的定义。

2023-05-10 00:37:38 606 1

原创 Java数组

学习Java中的数组,了解数组数据结构及常见用法

2023-04-05 17:46:02 474

原创 Java运算符

Java运算符

2023-03-12 21:20:24 340

原创 Java基本数据类型变量自动提升、强制类型转换、String基本类型使用

Java基本数据类型变量自动提升、强制类型转换、String基本类型使用

2023-03-07 09:10:26 523

原创 Java关键字、标识符、变量数据类型

Java关键字、标识符、基本数据类型

2023-03-03 08:00:00 452

原创 Java开发环境搭建

java环境搭建-JDKJavaDevelopmentKit):是Java程序开发工具包,包含JRE和开发人员使用的工具。JREJavaRuntimeEnvironment):是Java程序的运行时环境,包含JVM和运行时所需要的核心类库。如下是Java 8JDK包含JRE,JRE包含JVMJVMJavaVirtualMachine ,Java 虚拟机):是一个虚拟的计算机,是 Java 程序的运行环境。JVM 具有指令集并使用不同的存储区域,负责执行指令,管理数据、内存、寄存器。

2023-02-26 20:58:05 321

原创 Array size is not a small enough positive integer

Array size is not a small enough positive integer

2023-02-23 09:20:26 716

原创 Vue3 Proxy代理为什么要用 Reflect映射

vue3为什么使用reflect映射

2022-12-22 14:01:23 1518 2

原创 vue3插槽(匿名插槽-具名插槽-插槽作用域-动态插槽)

vue3插槽(匿名插槽-具名插槽-插槽作用域-动态插槽)

2022-12-15 09:25:31 1079

原创 onMounted中使用async改为同步

mounted改为同步执行

2022-12-01 09:15:35 2749 1

原创 从0到1实现 mini-vue【patch】

✨mini-vue 已更新到 patch✨Githubmini-vue✨目录结构基于Vue3从0到1实现 mini-vue【reactive】✨实现最简 vue3 模型,用于深入学习 vue3, 让你更轻松的理解 vue3 的核心逻辑patch。

2022-10-23 18:27:12 273 8

原创 神奇的兔子数列

努力是为了不平庸~算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对于算法的理解,同时吸收他人的奇思妙想,一起见证技术er的成长~

2022-10-22 20:41:47 916 4

原创 从0到1实现 mini-vue【vnode&mount】

✨mini-vue 已更新到虚拟Dom结构与模版挂载✨Githubmini-vue✨目录结构基于Vue3从0到1实现 mini-vue【reactive】✨实现最简 vue3 模型,用于深入学习 vue3, 让你更轻松的理解 vue3 的核心逻辑。

2022-10-19 09:11:24 259 5

原创 基于Vue3从0到1实现 mini-vue【computed】

基于Vue3实现min-vue之实现ref响应式。帮助您学习巩固Vue3。

2022-10-07 17:55:11 467 2

原创 基于Vue3从0到1实现 mini-vue【ref】

基于Vue3实现min-vue之实现ref响应式。帮助您学习巩固Vue3。

2022-10-06 13:10:26 396 2

原创 基于Vue3从0到1实现 mini-vue【reactive】

实现最简 vue3 模型,用于深入学习 vue3, 让你更轻松的理解 vue3 的核心逻辑。

2022-10-05 21:56:49 816 5

粉色的心动代码,一颗会跳动的心

粉色的心动代码,一颗会跳动的心

2022-12-06

基于Vue3实现简单的mini-vue之实现ref

实现最简 vue3 模型,用于深入学习 vue3, 让你更轻松的理解 vue3 的核心逻辑。 当我们需要深入学习 vue3 时,我们就需要看源码来学习,但是像这种工业级别的库,源码中有很多逻辑是用于处理边缘情况或者是兼容处理逻辑,是不利于我们学习的。 我们应该关注于核心逻辑,而这个库的目的就是把 vue3 源码中最核心的逻辑剥离出来,只留下核心逻辑,以供大家学习。

2022-10-06

基于Vue3实现简单的mini-vue之实现reactive

实现最简 vue3 模型,用于深入学习 vue3, 让你更轻松的理解 vue3 的核心逻辑。 当我们需要深入学习 vue3 时,我们就需要看源码来学习,但是像这种工业级别的库,源码中有很多逻辑是用于处理边缘情况或者是兼容处理逻辑,是不利于我们学习的。 我们应该关注于核心逻辑,而这个库的目的就是把 vue3 源码中最核心的逻辑剥离出来,只留下核心逻辑,以供大家学习。

2022-10-05

prettierrc常用配置

将js放在vue根目录,下载安装prettierrc插件,代码格式化会按照js文件里的配置进行。 // 一行最多 100 字符 printWidth: 100, // 使用 2 个空格缩进 tabWidth: 2, // 不使用缩进符,而使用空格 useTabs: true, // 行尾需要有分号 semi: false, // 使用单引号 singleQuote: true, // 对象的 key 仅在必要时用引号 quoteProps: 'as-needed', // jsx 不使用单引号,而使用双引号 jsxSingleQuote: false, // 末尾不需要逗号 trailingComma: 'all', // 大括号内的首尾需要空格 bracketSpacing: true, // js

2022-03-29

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

TA关注的人

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