运算符 基础java day
详述Java内存屏障,透彻理解volatile
一般来说内存屏障分为两层:编译器屏障和CPU屏障,前者只在编译期生效,目的是防止编译器生成乱序的内存访问指令;后者通过插入或修改特定的CPU指令,在运行时防止内存访问指令乱序执行。 下面简单说一下这两种屏障。 1、编译器屏障 编译器屏障如下: asm volatile("": : :"memory" ......
电源PCB基础知识
以下用来记录平时学到的PCB相关知识,欢迎大家多多指导!未完待续~~~ 1.铜厚 PCB的铜厚有两种,一种是基铜,一种是电镀铜。基铜是指拿来做板的原材料的铜,比如板厂出厂的芯板自带的铜厚。电镀铜是在芯板上的铜上面进行增铜或者减铜。 电镀层分为PCB外层电镀层和内层电镀层。 内层非电镀层/um 内层电 ......
2023-2024-1 20231306 《计算机基础与程序设计》第五周学习总结
这个作业属于哪个课程 2023-2024-1-计算机基础与程序设计 这个作业要求在哪里 2023-2024-1计算机基础与程序设计第五周作业) 这个作业的目标 Pep/9虚拟机、机器语言与汇编语言、算法与伪代码测试:黑盒,白盒 作业正文 https://www.cnblogs.com/zwywuhu ......
#软件技术基础 ——第二次作业
软件技术基础 https://edu.cnblogs.com/campus/zjlg/23rjjsjc 这个作业的目标 设计一个命令行文本计数统计程序,功能越多越好 姓名-学号 杨梁-2021330301131 一、作业要求: 实现一个命令行文本计数统计程序。能正确统计导入的纯英文txt文本中的字符 ......
#软件技术基础——第二次作业
软件技术基础 https://edu.cnblogs.com/campus/zjlg/23rjjsjc 这个作业的目标 设计一个命令行文本计数统计程序,功能越多越好 姓名-学号 杨梁-2021330301131 一、作业要求: 实现一个命令行文本计数统计程序。能正确统计导入的纯英文txt文本中的字符 ......
K8S(KubeSphere)边做边学(一)——基础故障排查
公司系统近1年开始转变为基于微服务的k8s部署结构,使用的是kubesphere。 由于公司系统迭代更新频率较高,且不时有新的私有化客户部署搭建,更新和部署过程中经常会遇到各类问题。对于研发出生,非运维专业又是半路出家学习了解K8S的我来说,一路磕磕碰碰,边学习边积攒经验,并对期间的操作处理做个总结 ......
网络加密方式基础(未完)
前言:在网络中数据往往不是直接存储和传递的,一般都需要进行加密,本篇来介绍一下常见的加密编码 1.0 MD5及其组合 MD5是一种不可逆的加密方式,其密文有16位和32位两种形式,由A-Z,0-9随机分配,百分之八十的管理员或者用 户密码利用MD5进行加密,但有些网站的利用不是直接对MD5的利用,往 ......
Java List 添加元素要用拷贝
学Java遇到一个坑,那就是往ArrayList(别的collection应该也类似)中添加元素时,如果这个元素后面又改变了,之前添加的值也会被改变: List<String> newString = new ArrayList<>(); String myString = "hello"; new ......
React学习一:环境搭建、JSX基础、事件绑定、组件使用、样式控制
一、概念 React由Meta公司研发,是一个用于构建Web和原生交互界面的库。 react中文文档地址:https://zh-hans.react.dev/learn React的优势 相较传统基于DOM开发的优势:组件化的开发方式;不错的性能 相较于其他前端框架的优势:丰富的生态;跨平台支持 二 ......
Java基础 线程池
线程池 主要核心原理: ① 创建一个池子,池子中是空的 ② 提交任务时,池子会创建新的线程对象来执行任务,当任务执行完毕,线程会还给池子,下回再次提交任务时,不需要创建新的线程,直接复用已有的线程即可 ③ 但是如果提交任务时,池子中没有空闲线程,并且也无法创建新的线程的时候,任务就会排队等待 线程池 ......
Java语言基础知识全总结
一.Java的优点 1. 跨平台性。一次编译,到处运行。Java编译器会将Java代码编译成能在JVM上直接运行的字节码文件,C++会将源代码编译成可执行的二进制代码文件,所以C++执行速度快 2. 纯面向对象。Java 所有的代码都必须在类中书写。C++兼具面向对象和面向过程的特点? 3. Jav ......
day2
[TOC] # 前置知识: ## 动态链接库 我们可以使用ldd对程序进行观察,`ldd`命令用于**打印**程序或者库文件**所依赖的共享库列表**。Glibc安装的库中有一个为`ld-linux.so.X`,其中X为一个数字,在不同的平台上名字也会不同。 ```sh libc.so.6 => / ......
在学习JavaWeb以及Java框架中的疑惑
1. Sevlet和SpringMVC与SpringBoot以及Spring Servlet是服务器端小程序,本质上是属于Controller层的,举个例子,LoginServlet和LoginController是划等号的。 Spring MVC是Spring的一个模块,是一个web框架。通过Di ......
LeedCode刷题(2)-Java随机数练习
2.随机数练习 (1)随机生成数 题目:请编写如下所示程序 随机生成并显示一位数的正整数(1~9的值) 随机生成并显示一位数的负整数(-9 ~ -1的值) 随机生成并显示两位数的正整数(10~99的值) ①Random类总结 random是Java提供的一个类库,它的实例会生成一连串的伪随机数 Ra ......
01 JS基础
// 类型转换var x = '11';console.log(parseInt(x));var y = 11;console.log(String(y));var i = 11.11;console.log(parseInt(i));//字符类型var str = "Jason | is | DS ......
java——redis随笔——实战——优惠券秒杀——分布式锁
注意:synchronized用户单机(jvm)上面的锁,对于分布式应用则无能为力。所以对于分布式系统,则需要分布式锁。 分布式锁:满足分布式系统或集群模式下多线程课件并且可以互斥的锁 分布式锁的核心思想就是让大家共用同一把锁,那么我们就能锁住线程,不让线程进行,让程序串行执行,这就是分布式锁的核心 ......
用java写一个计算机
public class Demo07 { public static void main(String[] args) { //用scanner创建一个扫描器对象,用于接收键盘数据 Scanner scanner = new Scanner(System.in);//System.in是输入的意思 ......
2023-2024-1 20231314 许城铭 《计算机基础与程序设计》第5周学习总结
2023-2024-1 20231314 许城铭 《计算机基础与程序设计》第5周学习总结 作业信息 这个作业属于哪个课程 <班级的链接>(https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP) 这个作业要求在哪里 <作业要求的链接>(2022-2 ......
java的边框
1.关于边框 是能够在swing组件边缘周围渲染边框的对象的接口,边框就是对组件边界的装饰,可以为组件添加边框的色彩,也可以在边框上添加标题,让组件更加美观好看。 2.部分边框类 BevelBorder : 实现简单的两行斜角边框的类。 参数: protected int bevelType 斜面类 ......
20231327 司宏林《计算机基础与程序设计》第5周学习总结
学期(2023-2024-1) 学号(20231327) 《计算机基础与程序设计》第5周学习总结 作业信息 这个作业属于哪个课程 <班级的链接>(如2023-2024-1-计算机基础与程序设计) 这个作业要求在哪里 <作业要求的链接>(如2023-2024-1计算机基础与程序设计第5周作业) 这个作 ......
[Java]Java初学之多线程03--同步与锁
Intro 本篇文章主要关于多线程"同步"以及"锁"的相关内容~ 正文 同步(Synchronize) 概念 “同步”是基于“并发”的需求而出现的 所谓并发,就是同一个对象被多个线程同时操作,比如两个人同时从同一个账户取钱,再比如春运抢票。 多个线程同时使用一个资源,必然会造成混乱。想象一下从前的线 ......
Java Hotspot G1 GC 原理
目录原理概念初始堆占用情况标记Remember Set原理Card TableCollect Set停顿预测模型G1的垃圾回收过程对象分配线程本地分配缓冲区Eden 区中分配Humongous 区分配堆内存结构传统的 GC 收集器G1 收集器G1 垃圾收集周期Young GCYoung GC 总结M ......
Java面试专题
Java面试专题 面试题背后的逻辑->拆分问题讲解->回答方式及参考问题 Redis篇 使用场景 1、你在最近的项目中哪些场景使用了redis? 缓存:缓存击穿,缓存穿透,缓存雪崩,双写一致性,数据过期策略,数据淘汰策略 分布式锁:setnx,redission 2、什么是缓存穿透,怎么解决? 缓存 ......
2023-2024-1-20231317<<计算机基础与程序设计>>第五周学习总结
《计算机基础与程序设计》第五周学习总结 作业信息 这个作业属于哪个课程 <班级的链接>(2023-2024-1-计算机基础与程序设计) 这个作业要求在哪里 <作业要求的链接>(如2023-2024-1计算机基础与程序设计第五周作业) 这个作业的目标 <学习《C语言第五章选择控制结构、第六章循环控制语 ......
C#基础代码学习
using System; using System.Collections.Generic; public class Student{ public string Name { get; set; } } class MyClass { //用于存储学生对象的集合 private List<St ......
Java基础 多线程的 6 种状态
Java 的虚拟机当中没有定义运行状态,因为当线程抢夺到 CPU 执行权的时候,虚拟机会把当前线程交给操作系统管理,虚拟机就不管了。 ......
Java基础 阻塞队列的方式实现等待唤醒机制,哪里体现了等待?哪里又体现了唤醒?
Java的阻塞队列(Blocking Queue)可以用来实现等待唤醒机制,其中等待和唤醒的操作在队列的不同方法中体现: 1.等待: 在阻塞队列中,等待通常发生在以下情况: 2.当队列为空时,消费者线程试图从队列中取出元素时,它会被阻塞,直到队列中有元素可供消费。这种等待是通过阻塞队列的take() ......
Java基础 等待唤醒机制(阻塞队列方式实现)
等待唤醒机制还可以用 阻塞队列的方式进行实现 练习:利用阻塞队列完成生产者和消费者(等待唤醒机制)的代码 细节:生产者和消费者必须使用同一个阻塞队列 阻塞队列的创建方式(泛型:队列里面数据的类型):ArrayBlockingQueue<String> queue = new ArrayBlockin ......
数据结构与算法(LeetCode)第一节:认识复杂度,对数器,二分法与异或运算
一、认识复杂度 1.评估算法优劣的核心指标: 时间复杂度:当完成了表达式的建立,只要把最高阶项留下即可。低阶项都去掉,高阶项的系数也去掉,记为O(去掉系数的高阶项); 时间复杂度是衡量算法流程的复杂度的一种指标,该指标只与数据量有关,与过程之外的优化无关 常见的时间复杂度(从好到坏) O(1) ......
Java基础 什么是生产者和消费者
在Java中,"生产者-消费者"(Producer-Consumer)是一种常见的并发编程模型,用于协调多个线程之间的工作,其中一些线程充当生产者,而其他线程充当消费者。这模型通常用于处理共享数据的情况,其中生产者线程生成数据并将其放入共享缓冲区,而消费者线程则从缓冲区中取出数据并进行处理。主要特点 ......