- 博客(119)
- 收藏
- 关注
原创 JUC学习(二)
目录Doug Lea — JUC并发包的作者锁框架Lock和Condition接口可重入锁公平锁与非公平锁读写锁锁降级和锁升级队列同步器AQS底层实现公平锁一定公平吗?Condition实现原理———————————————————————————————在前面,我们了解了多线程的底层运作机制,我们终于知道,原来多线程环境下存在着如此之多的问题。在JDK5之前,我们只能选择synchronized关键字来实现锁,而JDK5之后,由于volatile关键字得到了升级(具体功能就是上一章所描述的),
2023-06-04 21:02:09
869
1
原创 JUC学习(一)
首先我们来分析,由于是同一个线程,并且B是一个赋值操作且读取了A,那么按照程序次序规则,A happens-before B,接着在B之后,马上执行了C,按照线程启动规则,在新的线程启动之前,当前线程之前的所有操作对新的线程是可见的,所以 B happens-before C,最后根据传递性规则,由于A happens-before B,B happens-before C,所以A happens-before C,因此在新的线程中会输出a修改后的结果10。那么它是怎么解决的重排序问题呢?
2023-05-22 09:07:41
855
3
原创 Uni-app项目应用总结(一)
如下图,需在输入框输入微信开发者工具的安装路径。若HBuilderX不能正常启动微信开发者工具,需要开发者手动启动,然后将uni-app生成小程序工程的路径拷贝到微信开发者工具里面,在HBuilderX里面开发,在微信开发者工具里面就可看到实时的效果。选择uni-app类型,输入工程名,选择uni-ui项目模板,点击创建,即可成功创建。2.在微信开发者工具里运行:进入hello-uniapp项目,点击工具栏的运行 -> 运行到小程序模拟器 -> 微信开发者工具,即可在微信开发者工具里面体验uni-app。
2023-05-14 18:33:05
1042
2
原创 计算机必读基础书籍
计算机是一种能够按照事先存储的程序,自动、高速、准确地对相关信息进行处理的电子设备。1946年2月,世界上第一台电子数字计算机ENIAC(Electronic Numerical Integrator AndComputer,电子数字积分计算机)在美国宾夕法尼亚大学诞生,它标志着科学技术的发展进入了新的时代一电子计算机时代。从第一台电子计算机的诞生到现在,这70多年的时间里,计算机的发展经历了以下4个阶段。电子管计算机(1946一1958年)晶体管计算机(1958一1964年)
2023-05-02 20:56:41
1358
2
原创 直接插入排序
插入排序(InsertionSort),一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法。插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增 1 的有序表。
2023-05-01 10:11:55
807
原创 4月自考总结
在考试结束后,发现自己有的地方并没有学的很透彻,例如信号量,虽然知道了代码,但感觉还是有些不太理解,遇到新的题型无法及时改变自己的认知,还有些基础的理论知识并不是很扎实,通过这次考试,认识到自己的不足,找到自己不太理解的地方便是最大的收获。在这次自考学习中,更深刻的认识到小组学习的重要性,通过小组学习,提升了学习效率,讨论输出更加深了自己对知识的理解,并且自考的学习不是应对考试,而是要以学习知识的目的去学习,通过考试来检查自己学习的成果。
2023-04-21 21:04:13
155
1
原创 jenkins打包构建springboot项目为docker镜像并上传nexus私服
jenkins打包构建springboot项目为docker镜像并上传nexus私服
2023-02-06 22:15:10
1591
2
原创 JDBC学习
JDBC就是使用Java语言操作关系数据库的一套API全程:Java DataBase Connectivity Java数据库连接
2022-08-25 15:50:24
860
1
原创 CSS总结二
display 属性是用于控制布局的最重要的 CSS 属性。display 属性规定是否/如何显示元素。每个 HTML 元素都有一个默认的 display 值,具体取决于它的元素类型。大多数元素的默认 display 值为 block 或 inline。块级元素总是从新行开始,并占据可用的全部宽度(尽可能向左和向右伸展)。块级元素的一些例子: - 内联元素不从新行开始,仅占用所需的宽度。行内元素...
2022-06-30 21:37:05
1794
原创 CSS总结一
CSS 指的是层叠样式表* (Cascading Style Sheets)是一种描述 HTML 文档样式的语言。CSS 描述应该如何显示 HTML 元素。CSS 选择器用于“查找”(或选取)要设置样式的 HTML 元素。我们可以将 CSS 选择器分为五类:简单选择器组合器选择器伪类选择器伪元素选择器属性选择器...
2022-06-30 20:58:34
1723
原创 html学习总结
:HTML 是用来描述网页的一种语言。HTML 指的是超文本标记语言 (Hyper Text Markup Language)。HTML 不是一种编程语言,而是一种标记语言 (markup language).标记语言是一套标记标签 (markup tag)。HTML 使用标记标签来描述网页。HTML 标记标签通常被称为 HTML 标签 (HTML tag)。...
2022-06-30 17:08:37
1763
原创 简单改变后的重大意义
同样代码,不同的人看到的却是不同的思想,不同的发展与未来。1.从版本2到版本一实现了从有限到无限的扩展,从两个确定数相加到两个任意数相加,实现了从有限2个数相加,到无限个数相加。同时通过a+B实现了对算法的封装,从而实现了在这里面具体的加法复用。...
2022-06-19 16:21:05
1740
1
原创 面向对象-理解多态
什么是多态?概念:用基类的引用指向子类的对象。通俗来说,就是多种形态,具体点就是去完成某个行为,当不同的对象去完成时会产生出不同的状态。多态有什么好处?有两个好处:1. 大大提高程序的可复用性。2. 使用多态可以解决项目中紧偶合的问题,提高程序的可扩展性,提高可扩充性和可维护性。举例结合设计模式9,10,11页代码。运算类 public class Operation { private double _numberA = 0;
2022-05-27 20:26:26
1778
1
原创 面向过程和面向对象
面向过程面向过程(Procedure Oriented):面向过程是一种以过程为中心的编程思想。都是以什么正在发生为主要目标进行编程。就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。面向对象面向对象(Object Oriented,OO)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象是一种对现实世界理解和抽象的方
2022-05-13 21:34:40
1843
1
原创 重新学习理解面向对象(一)
1.面向对象的三大特征是什么?封装,继承,多态封装:封装是面向对象的特征之一,是对象和类概念的主要特性。封装就是把过程和数据包围起来,对数据的访问只能通过已定义的界面。继承:对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),原始类称为新类的基类(父类)。多态:多态是指允许不同类的对象对同一消息做出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活,抽象,行为共享,代码共享的优势,很好地解决了应用程序函数同名问题。2.
2022-05-05 16:35:49
1802
原创 设计模式—原型模式
一 概念原型模式(Prototype Pattern)是一种对象创建型模式,用原型模式可以用原型实例指定创建对象的种类,它允许通过一个原型对象创建多个同类型的其他对象,而无需知道该对象的创建细节。这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我们可以缓存该对象,在下一个请求时返回它的克隆,在需要的时候更新数据库,以此来减少数据库调用。(浅克隆)浅克隆:如果原型对象的成员变量是值类型(如i
2022-04-30 17:16:50
1757
2
原创 Java-append()方法
Java中的append( )方法其实是创建了一个新的数组,扩大了长度,将需要添加的字符串给复制到这个新的数组中。Java中Stringbuffer有append( )方法:public class Test{ public static void main(String args[]){ StringBuffer sBuffer = new StringBuffer("aa"); sBuffer.append("bb"); sBuffer.append("cc");
2022-04-30 16:55:47
6460
3
原创 java中string为什么不可变
一 什么是不可变对象?不可变对象指对象一旦被创建,状态就不能再改变,任何修改都会创建一个新的对象。二 不可变的原因1.String的主要成员变量char value[]是private final类型的;String被声明为final class,是典型的Immutable类;源码如下public final class Stringimplements java.io.Serializable, Comparable<String>, CharSequence {...
2022-04-30 16:43:05
2318
2
原创 JavaScript基础
解释性语言:JavaScript是一种运行在客户端的脚本语言,不需要编译,运行过程中由 js 解释器( js 引擎)逐行来进行解释并执行。组成:JavaScript 包括 ECMAScript、DOM、BOM。ECMAScriptECMAScript是一个标准,而这个标准需要由各个厂商去实现,不同的浏览器厂商对该标准会有不同的实现。这种语言在万维网上应用广泛,它往往被称为 JavaScript 或 JScript,但实际上后两者是 ECMAScript 语言的实现和扩展。DOM文档对象模
2022-04-10 20:24:09
2269
2
原创 今天三十分钟会议看时间管理
今天开了三十分钟的会议有关于时间管理,疫情封闭的一个月时间以来,缺卡次数增加,自己在家对于时间管理方面有了一些懈怠,为了能更好的做好时间管理,首先要从打卡坐起。利用好自己手里的智能工具,如闹铃,循环提醒,五分钟一次,加强提醒,同时,自己也要在闹铃响起的同一时间打卡。跟自己在一起的同学做好合作,大家相互提醒,相互进步。同时做好番茄学习,即便在家办公,也要提高学习效率。...
2022-03-31 21:43:53
1981
3
原创 J2SE介绍
Java2平台包括:标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本。Standard Edition(标准版) J2SE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程。J2se包含了构成Java语言核心的类:数据库连接、接口定义、输入输出、网络编辑等;J2se是最基础的运行Java程序的工具包,包含了基本的Java类库,开发程序时不用使用http这些对象。J2ee(Java 2 enterprise edition)是Java2的企业版,主要
2022-03-31 21:38:43
2699
1
原创 try、catch、finally用法总结:
try、catch、finally用法总结:1.执行顺序为先执行try块,并没有捕获到异常,finally 块,最后return。2.不管有没有异常,finally中的代码都会执行3.当try、catch中有return时,finally中的代码依然会继续执行4.finally是在return后面的表达式运算之后执行的,此时并没有返回运算之后的值,而是把值保存起来,不管finally对该值做任何的改变,返回的值都不会改变,依然返回保存起来的值。也就是说方法的返回值是在finally运算之前.
2022-03-31 21:37:24
5333
3
原创 ArrayList和LinkedList、Vector的区别
ArrayList,LinkedList和Vector都继承自List接口。ArrayList和Vector的底层是动态数组,LinkedList的底层是双向链表.ArrayList和Vector的区别就是ArrayList是线程不安全的,Vector是线程安全的,Vector中的方法都是同步方法(synchronized),所以ArrayList的执行效率要高于Vector,它也是用的最广泛的一种集合,Vector可以设置增长因子,而ArrayList不可以。ArrayList有三个构造方法,Vect
2022-03-31 21:26:56
1981
4
原创 闭环思维深刻认识
1.什么是闭环思维所谓“闭环思维”指的是:别人发起的工作或活动,在一定的时间内,无论执行者完成的效果如何,都要认真、负责的反馈给发起人,而且任何工作和事情都要贯彻这一思维。2.来源“闭环思维”来源于美国质量管理专家休哈特博士提出的“PDCA循环”。“PDCA循环”将管理分为四个阶段:“闭环思维”来源于美国质量管理专家休哈特博士提出的“PDCA循环”。“PDCA循环”将管理分为四个阶段:1.P (plan) 计划:目标与方针的确定,以及活动规划的制定。2.D (Do) 执行:.
2022-02-28 20:39:07
2869
2
原创 C#使用SunnyUI
源码:https://gitee.com/yhuse/SunnyUI下载之后解压。点击视图,选择工具箱右击,选择添加选项卡,输入名称,我这里写的是Sunny在sunny右击,再出来的列表中点击选择项点击浏览选择刚刚解压好的文件夹所在路径下的SunnyuI.dll文件点击确定然后在右侧管理器中的winform的引用上右击,点击管理NuGet程序包在浏览处搜索Sunnyui下载安装,添加引用。...
2022-02-28 20:30:45
6620
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人