自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 问答 (1)
  • 收藏
  • 关注

原创 Java中封装与单例模式

对于普通对象来说,调用属性名进行赋值时,需要去记住对象的属性名以及类型,非常麻烦,并且对于属性值没有验证机制,不能保证数据的安全性和隐秘性。而封装就能解决这些问题。封装:是将类里的某些信息通过访问权限修饰符,限制其使用范围,从而达到隐藏的目的,要访问或者修改的话只能通过类暴露出来的setter/getter执行。封装的好处:隐藏实例化的细节,并且只能通过规定的方法进行更改或者查看,而不是任何类属性都可以查看和修改。封装的实现步骤:1.对类中属性使用private修饰...

2022-01-21 22:39:57 730

原创 Java中类与对象的理解

在说明之前先介绍一下两个常见的概念:面向对象和面向过程的语言面向过程:是一种上下文代码衔接更加紧密,更加严谨的方式。像C就属于面向过程的语言,这类语言更适合硬件机器编程,操作系统等设计像Linux(所以Linux之父也比较痛恨往他的代码里提交CPP的代码)面向对象:强调的是模块化,可复用性,健壮性,说白一些就是方便人去操作使用,解决工程问题,其中类和对象就是关键(像Java,C++等都属于面向对象的语言,JavaScript虽然也能够模拟实现继承和封装,但是无法模拟实现多态,所以我们说JS是一门基于

2022-01-19 22:12:45 620

原创 关于Vite2按需引入antdv的补充

在前面的文章已经介绍了antdv在vite2中的按需引入,详见antdv的按需引入。但在使用过程需要注意一些部分,就是关于Layout,Menu等含有子类方法的组件,其引用方式有所不同import { App } from "vue";import { Breadcrumb, Button, Input, Layout, Menu} from 'ant-design-vue'const components = [ Button, Input, Layout,

2021-11-23 10:41:19 1243

原创 JavaScript面试考点-==与===判断

最近在准备面试,复习过程中想起之前字节面试的一道非常有意思,并且知识点比较全面细节的一道题,面试官当时问的是 [] == !([]) 应该返回什么,被问的有点傻,后面面试官提示了自己下面又看了以后理解,把这个有趣的题给大家分享一下。首先说一下 ==和=====:相等操作符会对操作值进行隐式转换后进行比较 1、布尔值、字符串和数值进行比较,转换为数值之后在进行比较 2、null与undefined是相等的 3、与NaN判...

2021-11-20 00:39:39 962

原创 Vite2+TypeScript中设置全局路径@以及按需加载antdv

1.安装必要vite插件yarn add vite-plugin-style-import -D or npm i vite-plugin-style-import -D2.在vite.config.ts中进行配置import { defineConfig } from "vite"import vue from "@vitejs/plugin-vue"import cesium from "vite-plugin-cesium"import { resolve } from 'p

2021-11-19 13:32:27 1788

原创 JavaScript面试考点-new操作符

JavaScript中new操作符是通过构造函数来创建一个实例对象。而使用new的方式创建一个实例对象,经历了四个步骤:创建一个空的对象 将新对象的对象原型,指向构造函数的原型对象即__proto__ = f.prototype this指向 返回对象具体实习一个new的过程如下: function myNew(constructor, ...args) { //创建空对象,并且改变原型指向 let obj = Object.create(constructor.pr

2021-11-18 20:38:44 649

原创 JavaScript基本类型之处理大数-BigInt

JavaScript的基本类型为:Boolean Null Undefined Number BigInt String Symbol Object其中BigInt是JavaScript于2019.7.22正式公布,并成为第八个基本数据类型。BigInt数据类型出现的目的是为了支持比Number数据类型支持的范围更大的整数值。使整数溢出不再是问题。由于JS存在数值限制,整数范围是[-2^53, 2^53],即[-9007199254740991,9007199254740991]

2021-11-15 10:37:16 3305

原创 力扣算法题26-树的子结构(JavaScript/TypeScript)

解题思路:因为题目规定空树不是任意一个树的子结构,所以A B任意空树返回false 判断B树是否为A树的子结构就是看A树与B树是否一致,或者A的左子树是否与B树一致,或者A的右子树是否与B树一致 第二步的逻辑判断实际上用到了很多重复的操作,所以我们可以将寻找的过程封装为一个函数,递归调用 如何判断B树是否为A树的子结构 如果B树中存在与A树不同的值则一定返回false 若B树非空而A树已经空了,则返回false 若B树已经被找空都没有返回false,则B一定为A的子结构 代码:

2021-11-13 21:49:17 695

原创 Typescript中动态为对象赋值

过去给JavaScript的对象赋值,形式为:let test= {};obj.prop = 123;但是在TypeScript中,这会产生一个错误:类型“ {}”的值不存在属性“ prop对于TypeScript来说有严格的类型检测,想要给其中的对象赋值,可以使用接口的方式:一.export interface IDrawDQG { subdivFactor?: number DQGStyle?: number isDrawSurface?: boole.

2021-11-12 15:23:45 4915

原创 TypeScript中联合类型赋值null/undefined

联合类型(Union Types)表示取值可以为多种类型中的一种。简单的例子let myFavoriteNumber: string | number;myFavoriteNumber = 'seven';myFavoriteNumber = 7;let myFavoriteNumber: string | number;myFavoriteNumber = true;// index.ts(2,1): error TS2322: Type 'boolean' is not assig

2021-11-09 13:25:31 2948

原创 Vite2+Cesium的集成

Vite和CesiumVite是vue作者尤雨溪在开发vue3.0时开发的一个基于原生ES-Module的前端构建工具,其本人灾后来对vue3的宣传中对自己的新作品Vite赞不绝口。从速度上来说,vite确实比webpack要快,这也是webpack本身热更新的一个缺陷,现在很多公司也开始上手使用vite2.0进行项目开发,具体vite2和webpack的区别可以在以后的文章介绍。Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品。它提供了基于JavaScript语言的开

2021-11-01 10:26:26 1472 3

原创 力扣算法题-5.最长回文子串

已知题目描述为给你一个字符串s,找到s中最长的回文子串。例如:b a b a d的最长回文子串即是a b a c b a a b d的最长回文子串即是 b a a b不难看出其实对于一个字符串的最长回文子串,实际上就是要找到一个‘中线’,往两边搜索,是否存在相同的字符整体思路如下:1.对于字符串长度小于2的字符串,直接return2.需要创建两个变量,一个maxLen存储回文字符串的长度,一个start存储该回文子串出现的位置3.封装一个函数,开始对...

2021-10-22 11:05:06 128

空空如也

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

TA关注的人

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