- 博客(51)
- 收藏
- 关注
原创 java锁面试题
如果在同一个锁对象上,自旋刚刚获得锁,并且持有锁的线程在运行,那么虚拟机会认为这次自旋也可能成功,那么自旋的时间就会比较长,如果某个锁,自旋没成功获得过,那么可能就会直接省掉自旋,进入阻塞,避免浪费处理器时间。排他锁(Exclusive Lock):排他锁是一种独占锁,也称为写锁,当一个事务获取了排他锁后,其他事务无法再获取该数据项的任何锁,包括共享锁和排他锁。轻量级锁:是指当锁是偏向锁的时候,被另外的线程所访问,偏向锁就会升级为轻量级锁,其他线程会通过自旋的形式尝试获取锁,不会阻塞,从而提高性能。
2024-04-20 13:49:40 1002
原创 JVM面试题
java中所有的类,必须被装载到jvm中才能使用,装载由类加载器完成,.class这个类型可以在虚拟机运行,但不是直接和操作系统交互,需要jvm解释给操作系统,解释的时候需要java类库,这样就能和操作系统交互。优点:保证类加载的安全性,避免重复加载,不管哪个类被加载,都会被委托给启动类加载器,只有父加载器不能加载,才会让子加载器加载,这样保证最后得到的对象都是同一个。子加载器可以使用父加载器加载的类,而父加载器不能使用子加载器加载的类。缺点:子加载器可以使用父加载器的类,而父加载器不能使用子加载器的类。
2024-04-19 20:40:08 683
原创 多线程面试题
Java提供的锁是对象级的而不是线程级的,每个对象都有锁,通过线程获得。由于wait、notify、notifyAll都是锁级别的操作,所以把他们定义在Object类中因为锁属于对象。死锁是一组互相竞争资源的线程因互相等待导致“永久”阻塞的现象。
2024-04-18 19:20:22 665
原创 微服务面试题
Eureka服务端会检查最近15分钟内所有Eureka实例正常心跳占比,如果低于85%就会触发自我保护机制。触发了保护机制,Eureka将暂时把这些失效的服务保护起来,不让其过期,但这些服务也并不是永远不过期。Eureka在启动完成后,每隔60s会检查一次服务健康状态,如果这些被保护起来失效的服务过一段时间后(默认90s)还没有恢复,就会把这些服务剔除。如果在此期间服务恢复了并且实例心跳占比高于85%时,就会自动关闭自我保护机制。
2024-04-17 18:59:09 879
原创 线程安全的懒汉式_死锁_ReentrantLock的使用
不同的线程分别占用对方需要的同步资源不放弃,都在等待对方放弃自己需要的同步资源,就形成了线程的死锁。我们编写程序时,要避免出现死锁。懒汉式:存在线程安全问题。(需要使用同步机制来处理)synchronized同步的方式与Lock的对比?以上4个条件同时出现就会触发死锁。饿汉式:不存在线程安全问题。
2024-02-02 17:30:32 308
原创 线程的同步机制
注意:在实现Runnable接口的方式中,同步监视器可以考虑使用this,在继承Thread类的方法中,同步监视器要慎用this,可以考虑使用:当前类.class。有两个储户分别向同一个账户存3000元,每次存1000,存3次。每次存完打印账户余额。方式2:同步方法:直接在方法前加synchronized关键字。必须保证一个线程未结束的情况下,其他线程无法进入。线程1未结束的情况下,其他线程进入了程序。
2024-02-01 17:58:44 202 1
原创 自定义异常类简介
1.如何自定义异常类?2.如何使用自定义异常类?3.为什么需要自定义异常类?继承于现有的异常体系。通常继承于通常提供几个重载的构造器在具体的代码中,满足指定条件的情况下,需要手动的使用"throw + 自定义异常类的对象"方式,将异常抛出。如果自定义异常类是非运行时异常,则必须考虑如何处理此异常类的对象。(具体的①②throws我们其实更关心的是,通过异常的名称就能直接判断此异常出现的原因。尽管如此,我们就有必要在实际开发场景中,不满足我们指定的条件时,指明我们自己特有的异常类。
2024-01-30 17:51:03 282
原创 手动throw异常对象
在实际开发中,如果出现不满足具体场景的代码问题,我们就有必要手动抛出一个指定类型的异常对象。在方法内部,满足指定条件的情况下,使用"throw+异常类的对象"的方式抛出。是用来声明函数可能抛出的异常类型的语法。是用来主动抛出异常的行为,而。
2024-01-30 15:17:45 43
原创 异常的处理方式2
子类重写的方法抛出的异常类型可以与父类被重写的方法抛出的异常类型相同,或是父类被重写的方法抛出的异常类型的子类。格式:在方法的声明处,使用“throws 异常类型1,异常类型2,…
2024-01-30 15:16:57 177
原创 异常的概述
1.什么是异常?2.异常的抛出机制3.如何对待异常4.异常的体系结构指的是程序在执行过程中,出现的非正常情况,如果不处理最终会导致JVM的非正常停止。
2024-01-30 15:14:42 171
原创 IO流-处理流之——对象流(序列化)
自定义类需要实现接口:Serializable。要求自定义类声明一个全局常量:static final long serialVersionUID = 42546465464L,用来唯一的标识当前的类。要求自定义类的各个属性也必须是可序列化的。对于基本数据类型的属性,默认就是可以序列化的。对于引用数据类型的属性,要求实现Serializable接口。
2024-01-26 18:09:24 75
原创 IO流-处理流之——转换流
gbk:用来存储中文简体繁体、a、b、c等英文字符和1、2、3常用的标点符号。中文字符使用2个字节存储,向下兼容ascii,英文字符1个字节。utf-8:可以用来存储世界范围内主要语言的所有字符,使用1-4个不等的字节表示一个字符。ascii:主要用来存储a、b、c等英文字符和1、2、3常用的标点符号,每个字符占用1个字节。字符编码:字符、字符串、字符数组—> 字节、字节数组(从我们能看懂的—>我们看不懂的)字符解码:字节、字节数组—>字符、字符串、字符数组(从我们看不懂的—>我们能看懂的)
2024-01-26 15:48:59 282
原创 IO流-处理流之——缓冲流
创建File的对象、流的对象(包括文件流、缓冲流)。使用缓冲流实现读写数据或写出数据的过程(重点)提升文件读写的效率。
2024-01-25 17:30:11 360
原创 IO流——流的概述和分类
1.IO流的分类2.基础IO流的框架3.FileReader \ FileWriter的使用4.FileInputStream \ FileOutputStream的使用。
2024-01-25 11:22:55 354
原创 File类
打印出指定目录下jpg格式的图片名称。删除指定文件目录及其下所有文件。获取文件和目录基本信息。File类的重命名功能。输出出指定目录文件大小。
2024-01-24 12:36:01 853
原创 应用举例:模板方法设计模式(抽象类)
抽象类体现的就是一种模板模式,抽象类作为多个子类的通用模板,子类在抽象类的基础上进行扩展、改造,但子类总体上会保留抽象类的行为方式。案例三:抽象员工系统,分全职工和小时工,输出他们的工资(生日当月工资加二百)应用举例:模板方法设计模式(TemplateMethod)全职工类 SalariedEmployee.java。小时工类 HourlyEmployee.java。测试类 PayrollSystem.java。案例1:计算代码运行时间。案例2:银行流程抽象。
2024-01-10 12:11:15 839
原创 Kafka学习笔记1(千峰教育)
这个主题用来存放消费者消费某个主题的偏移量,因为每个消费者都会自己维护消费的主题的偏移量,也就是说每个消费者会把消费的主题的偏移量自主上报给kafka中的默认主题:consumer_offsets。集群中有多个broker,创建主题时可以指明主题有多个分区(把消息拆分到不同的分区中存储),可以为分区创建多个副本,不同的副本存放在不同的broker里。副本是为了给主题中的分区创建多个备份,多个副本在kafka集群的多个broker中,会有一个副本作为leader,其他是follower。
2023-12-28 15:33:47 1344
原创 css学习笔记8(定位)
粘性定位和相对定位的特点基本一致,不同的是:粘性定位可以在元素到达某个位置时将其固定。不会脱离文档流,元素位置的变化只是视觉效果上的变化,不会对其他元素产生任何影响。——默认宽、高都被内容所撑开,且能自由设置宽高。注意:绝大多数情况下,相对定位会与绝对定位配合使用。比普通元素高,无论什么定位,显示层级都是一样的。相对定位的元素,也能继续浮动,但不推荐这样做。浏览器来说,视口就是我们看网页的那扇“窗户”。注意:该定位的元素必须设置宽高!调整位置,但不推荐这样做。相对定位的元素,也能通过。
2023-12-25 17:51:16 1169
原创 css学习笔记6(盒子模型)
块元素(block)html、bodyform与option行内元素(inline)a与label行内块元素(inline-block)imgtd、thiframe。
2023-12-22 16:17:10 1092
原创 css学习笔记4(文本属性)
备注:由于字体设计原因,靠上述办法实现的居中,并不是绝对的垂直具中,但如果一行中都是文字,不会太影响观感。备注:由于字体设计原因,文字在一行中,并不是绝对垂直居中,若一行中都是文字,不会太影响观感。问题:垂直方向上的底部对齐,更好的解决方法是什么?——后面我们用定位去做。后面会学习css中的一些新得长度单位,目前我们只知道像素(顶部:无需任何属性,在垂直方向上,默认就说顶部对齐。对于多行文字:控制行与行之间的距离。——后面我们用定位去做。,可以实现文字垂直居中。居中:对于单行文字,让。
2023-12-21 11:27:44 1198
原创 css学习笔记2
概念:如果发生了样式冲突,那就会根据一定的规则(选择器优先级),进行样式的层叠(覆盖)。颜色名这种方式,表达的颜色比较单一,所以用的不多。(向色相中对应颜色中添加灰色,网站,可查询属性是否可被继承。这三种光的三原色进行组合。亮度太强,所以就是白色了)规则:优先继承离得近的。的基础上,添加了透明度。详细聊:需要计算权重。亮度没了,所以是黑色。概念:元素会自动拥有。
2023-12-18 16:26:32 920
原创 CSS选择器
基本选择器特点用法通配选择器选中所有标签,一般用于清楚样式。元素选择器选中所有同种标签,但是不能差异化选择。类选择器选择所有特定类名(class值)的元素——使用频率很高。ID选择器选中特定id值得那个元素(唯一的)。
2023-12-18 02:36:02 959
原创 css学习笔记1
HTML(结构)、CSS(表现)、行为(JavaScript)CSS的全称:层叠样式表(Cascading Style Sheets)。CSS也是一种标记语言,用于给HTML结构设置样式,例如:文字大小、颜色、元素宽高等。简单理解:CSS可以美化HTML,让HTML更漂亮。核心思想:HTML搭建结构,CSS添加样式,实现了:结构与样式的分离。
2023-12-12 11:59:44 1003
原创 html学习笔记4
在html中我们可以用一种特殊的形式的内容,来表示某个符号,这种特殊形式的内容,就是html实体。比如小于号<用于定义html标签的开始。如果我们希望浏览器正确地显示这些字符,我们必须在html源码中插入字符实体。字符实体由三部分组成:一个&和一个实体名称(或者一个#和一个实体编号),最后加上一个分号(;2.针对IE浏览器的兼容性配置。6.针对搜索引擎爬虫配置。9.配置定义网页版权信息。10.配置网页自动刷新。3.针对移动端的配置。5.配置网页描述信息。8.配置网页生成工具。
2023-12-11 17:22:38 848
原创 html学习笔记3
标签名标签语义常用属性单/双标签form表单action:表单要提交的地址。target:跳转的新地址的打开方式;值:self、blankmethod:请求方式(post,get)双input多种形式的表单控件type属性:指定表单控件的类型。可选值(text、password、radio、checkbox、hidden、submit、reset、button等)。name属性:指定数据名称。
2023-12-11 15:11:49 1003 2
原创 html学习笔记2
是一种组织信息的方式,通过超链接将不同空间的文字、图片、等各种信息组织在一起,能从当前阅读的内容,跳转到超链接所指向的内容(页面、文件、锚点、应用)。标签:a 属性:href:跳转的位置 target:_self(默认,本页面) _blank:(新标签)概念:列表中的某项内容,又包含一个列表(注意:嵌套时,务必请把结构写完整)。通过a标签,可以唤起设备应用程序。–网页中的一个标记点。概念:无顺序或不侧重顺序的列表。主要作用:从当前页面进行跳转。概念:有顺序或侧重顺序的列表。
2023-12-10 04:11:06 357
原创 常见图片格式(笔记)
常见图片格式1.jpg格式2.png格式3.bmp格式4.gif格式5.webp格式6.base64格式1.jpg格式概述:扩展名为.jpg或.jpeg,是一种有损的压缩格式(把肉眼不容易观察出来的细节丢弃了)。主要特点:支持的颜色丰富、占用空间较小、不支持透明背景、不支持动态图。使用场景:对图片细节没有极高要求的场景,例如:网站的产品宣传图等。2.png格式概述:扩展名为.png,是一种无损的压缩格式,能够更高质量的保存图片。主要特点:支持的颜色丰富、占用空间略大、支持透明空间、不支持
2023-12-09 21:28:21 671
原创 html学习笔记1
hn (1-6)标题 p 段落 div 没有任何含义,用于整体布局(生活中的包装袋)scr:图片路径 alt:图片描述 width:宽度 一般是正比例对应的。vscode快速删除一行 shift+ctrl+k。h1到h6 标题标签(h1到h6不能互相嵌套)vscode格式化代码 shift+alt+f。当图片无法展示的时候,会显示alt属性的值。alt+shift+下 向下复制一行代码。写在head中,告诉浏览器用utf8解码。声明这是html5的网页。
2023-12-09 14:27:36 370
原创 HTML基本结构
一个基本的html网页,应该包含html、head、body标签,但是如果你这些都不写,直接写body标签里的语句,也能看到效果,这是什么原因呢?浏览器具体渲染的过程为:html格式检查,合法直接渲染,不合法处理后,在渲染。head标签内的内容一般都是不显示的,body标签的内容为显示在网页的内容。可以看见浏览器帮我们自动处理,把head中的语句放在body里了。【查看网页源代码】看到的是:程序员编写的源代码。【检查】看到的是:经过浏览器“处理”后的源代码。当我们在属性不加双引号时,浏览器也会处理再渲染。
2023-12-08 10:03:17 380
原创 Servlet生命周期
Servlet生命周期Servlet生命周期生命周期Servlet生命周期生命周期init()、service()、destroy()。service方法中执行内容。
2022-05-11 11:31:58 75
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人