![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 50
red_delia
这个作者很懒,什么都没留下…
展开
-
建造者模式详解
是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。:建造者模式所创建的产品一般具有较多的共同点,其组成部分相似,如果产品之间的差异性很大,则不适合使用建造者模式,因此其使用范围受到一定的限制。原创 2023-06-15 12:08:14 · 856 阅读 · 0 评论 -
(并发)锁的分类
静态块,,非静态块。对象锁锁的是,但程序中同一个类可以有多个实例化对象,所以对象锁,在两个或多个实例化对象之间不起作用。类锁锁的是,而在java中我们的类加载是唯一的,即在JVM中类是唯一的,所以加了类锁,。类锁和对象锁不是同一个东西,一个是类的Class对象的锁,一个是类的实例的锁。。反过来也是成立的,因为他们需要的锁是不同的。原创 2023-03-27 10:54:05 · 785 阅读 · 1 评论 -
(了解)操作系统与驱动
驱动是指一种软件程序,它允许操作系统或其他软件程序与硬件设备进行通信和交互。系统或其他软件程序可以通过它们来访问设备功能。CPU(中央处理器)不是驱动程序,它是计算机中的一个重要组件,用于执行指令和计算。原创 2023-03-24 23:53:15 · 1531 阅读 · 0 评论 -
Docker常用指令
docker run: 运行一个容器。: 停止一个正在运行的容器。: 启动一个已经停止的容器。: 重启一个容器。docker rm: 删除一个容器。docker ps: 列出正在运行的容器。: 列出本地所有镜像。原创 2023-03-23 22:04:40 · 687 阅读 · 0 评论 -
代码规范简述
只能通过public方法来访问和修改;继承性:继承性是面向对象编程的重要特性,要求子类和父类之间要保持适当的关系,不应该随意修改父类的属性和方法;多态性:多态性是面向对象编程的又一重要特性,要求方法的参数类型和返回值类型要尽量使用父类或接口类型,便于扩展和维护。原创 2023-03-03 22:02:46 · 1344 阅读 · 0 评论 -
xxl-sso知识点
1、哈希环算法 2、池化思想 3、threadLocal原创 2023-02-01 20:04:58 · 833 阅读 · 0 评论 -
HashMap相关
HashMap是线程不安全的,存储的值没有顺序,根据key的HashCode值来存储数据,根据key来获取他的value值,具有很快的访问速度。最多,多个时会覆盖,允许多条记录的Value为null。在中,由数组和链表组成,数组是HashMap的主体,链表是为了解决哈希冲突。在中,由数组+链表+红黑树组成,链表过长的时候,影响HashMap性能,JDK8中,链表超过8并且数据总量超过64就会转红黑树,转之前会判断,如果数组长度小于64就会选择先进行数组扩容。原创 2023-01-12 12:56:07 · 247 阅读 · 0 评论 -
springboot多项目结构
当我们做的项目稍微大一点之后,就会经常遇到需要把不同的模块分离出来的时候,比如微信的朋友圈、微信支付、聊天服务等模块,像这种微服务项目一般都会把base、common、前端抽离出来。原创 2023-01-09 18:16:32 · 935 阅读 · 0 评论 -
异常拦截=
异常拦截的目的:规范化异常的处理过程,避免异常被吞和到处都在捕获异常的情况;对异常情况进行预警,以便能够及时响应原创 2023-01-09 11:18:38 · 112 阅读 · 0 评论 -
事务四大特性
①原子性undolog 来实现一旦失败就马上触发回滚当前事务是不可再分的,要么一起执行,要么都不执行。 start transaction原创 2023-01-02 22:54:20 · 311 阅读 · 0 评论 -
静态代理与动态代理
代理是一种设计模式,提供了对目标对象另外的访问方式。意义:可以在目标对象代码实现的基础上,增强额外的功能代码。原创 2022-12-21 23:52:48 · 62 阅读 · 0 评论 -
java中的垃圾回收算法
java中有四种垃圾回收算法,分别是:标记清除法、标记整理法、复制算法、分代收集算法原创 2022-12-21 23:24:22 · 3731 阅读 · 0 评论 -
Spring循环依赖
发生循环依赖的原因:在代码中,将两个或多个 Bean 互相之间持有对方的引用就会发生循环依赖。循环的依赖将会导致注入死循环原创 2022-12-17 22:37:32 · 322 阅读 · 0 评论 -
面向过程和面向对象的区别
面向对象让程序维护起来简单;由于继承、封装、多态的特性,以及高内聚、低耦合的系统结构,使得系统更加灵活、更容易扩展;原创 2022-12-15 11:49:51 · 119 阅读 · 0 评论 -
mysql数据库的运行原理
mysql数据库会通过监听socket端口,java通过TCP/IP协议[传输层]给3306默认端口发送sql语句原创 2022-10-12 23:06:16 · 314 阅读 · 0 评论 -
对象在堆内存中的布局
对象在堆内存中的存储布局可以划分为三个部分:对象头、实例数据和对齐填充。原创 2022-10-08 22:43:30 · 284 阅读 · 0 评论 -
jvm是怎么分配空间的
jvm分配空间有两种方式,以下采用通俗的方式来阐述:原创 2022-10-08 22:36:45 · 196 阅读 · 0 评论 -
网络攻击的一般步骤
第一步:隐藏攻击源利用别人的计算机 (肉机) 隐藏他们真实的 IP 地址,伪造 IP 地址,假冒用户账号等。第二步:信息搜集攻击者通过各种途径搜索目标信息,进行综合整理分析后,拟定攻击方案,为入侵作好充分的准备。踩点、扫描、嗅探等手段。第三步:掌握系统控制权攻击者们利用系统漏洞进入进入目标主机系统获得控制权。通常是系统口令猜测、种植木马、会话劫持等。第四步:实施攻击不同攻击者目的不同,主要是破坏机密性、完整性和可用性等。通常是下载、修改或删除敏感信息、瘫痪服务、攻击其他被信任的主机原创 2022-05-12 22:16:02 · 16119 阅读 · 0 评论 -
防火墙与计算机病毒
防火墙:防火墙提供的基本服务:有选择地限制外网用户对内网的访问,保护内网的特定资源;有选择地限制内部网用户对外网的访问。防火墙三大要素:安全、配置、速度分类:按软硬件形式分为硬件防火墙和软件防火墙;按防火墙部署位置分为边界防火墙、个人防火墙、分布式防火墙。防火墙的主要功能:①阻止易受攻击的服务②控制访问网点③集中安全性管理④对网络存取和访问⑤进行监控审计⑥检测扫描计算机的企图⑦防范特洛伊木马⑧防病毒功能⑨支持VPN技术⑩提供网络地址翻译功能防火墙的缺陷:不能防范内部攻击;不能防范不通过防火墙的连原创 2022-05-12 22:14:21 · 1362 阅读 · 0 评论 -
Java基础4(类与对象)
属性(字段)+ 方法 = 类(class)静态的属性 动态的行为面向对象(oop):分类的思维模式,而面向过程是线性思维模式,面向对象是适合多人协作的复杂问题。oop的本质:以类的方式组织代码,以对象的形式封装数据。抽象:把多个共同点抽取出来形成一个类。(抽 像)从认识论分析:是具体对象抽象成类;但从代码运行角度分析:是由类这样一个模板新建了一个对象。方法: 修饰符 返回值类型 方法名(……){方法体return 返回值;}public String Hello{原创 2022-04-03 22:37:00 · 351 阅读 · 0 评论 -
JAVA基础2
运算符: 整除:/ 取余:% 不等于:!= instanceof与:&& 或:|| 非:!包:(Package)相当于文件夹idea中Ctrl+D:复制当前行到下一行a=10,b=20,则a/b=0,而a/(double)b=0.5几个数相加,若某一个数为long/double,则结果为long/double;如果没有long,(整数)计算结果都为int。幂运算:double pow = Math.pow(2,3);System.out.println(pow原创 2022-03-21 20:29:30 · 559 阅读 · 0 评论 -
悲观锁与乐观锁
按照书上的说法来说,进程是操作系统进行资源分配的基本单位。通俗来说,进程就是程序,我们平时使用的微信,qq都是进程。线程是进程中一个单一任务的控制流,是CPU调度的最小单位。悲观锁:认为在线程中存在大量的竞争关系,一旦抢到内存资源,就会锁死这一块内存资源,不允许其他线程争抢。(适用于大量线程)乐观锁:不认为有大量的线程同时争抢同一块内存资源,以版本号为基础(记录一个版本)进行操作。(适用于少量线程)...原创 2021-12-11 17:45:59 · 523 阅读 · 0 评论 -
类与对象笔记
创建一个类:(public)class Test{}Test是类名创建一个person对象:Person zhang = new Person ();int是一个全局变量class是关键字,代表一个类new关键字,代表创建对象,在堆内存开辟内存空间person关键字,代表类型zhang是对象名对象是堆内存里面创建的一块内存空间。调用一个方法就是让一个方法入栈类和对象的关系:类是构建对象的模版Static定义的class是一个全局变量。...原创 2021-12-11 17:14:02 · 154 阅读 · 0 评论 -
银行家算法—简单易懂解题思路
来个题:首先明确:Max—最大资源需求量Need—需要资源量Allocation—已分配资源量Available—系统剩余资源数量其中,Need=Max-Allocation我们由此可以得出需求量Need的表格比较Available中的每一个数(2 3 3)是否比Need中的大,很明显p1-5中只有p4和p5满足,(这里说明一下安全序列不是唯一的,即答案不唯一)如果满足,将Available与Available相加,例如:此题中将p4中的已分配资源量与系统剩余资源量相加,得到4 3原创 2021-12-10 18:51:09 · 5400 阅读 · 0 评论 -
原码反码与补码
1代表正数 0代表负数反码:正数的反码等于原码,负数的反码等于符号位不变,其余位按位取反。补码:正数的反码等于原码等于补码,负数在反码基础上末尾????➕1⃣️计算机存储数据存储的是补码形式。计算机设计反码的原因:计算机只有加法没有减法,1-1会自动换算成1+(-1),而原码计算会造成计算结果与实际不符的情况,但补码相加会产生±0,所以补码的出现又解决了这一问题。总结:反码是为了解决减法运算,补码是为了解决反码产生的±0的问题。八位二进制反码表示的范围是【-127,127】补码表示的范围是【-原创 2021-12-05 11:41:04 · 167 阅读 · 0 评论 -
Java基本数据类型之间的转换(强制转换与处理精度丢失
java8⃣️种基本数据类型:(占位)整型:byte short int long 8 16 32 64浮点型:float double 32 64布尔型:boolean 32字符型:char 16byte可以转换成short,intint可以转换成long和double,float也能转换成doubleint可以转换成float类型,但会造成精度丢失,因为都是32位,但是int有一位代表符号位char能转换成int,int不能转换成char:简单来说就是占位少的能转换成占位多的。强制原创 2021-12-05 11:34:52 · 1275 阅读 · 0 评论 -
从C语言到Java(以1+1为例)
当我们使用c时:function (int a){a=1+1;return a;}使用Java时:public class Demo {//定义一个类 public static void function (){ int a=1+1; System.out.println(a); } public static void main (String [] args){//main 方法,实现调用,直接打main就可以了 functi原创 2021-12-05 11:31:15 · 176 阅读 · 0 评论