07 2023 档案

摘要:3.1 概述 Java8的Stream使用的是函数式编程模式, 如同它的名字一样,它可以被用来对集合或数组进行链状流式的操作。可以更方便的让我们对集合或数组操作。 3.3 快速入门 3.3.1 需求 我们可以调用getAuthors方法获取到作家的集合。现在需要打印所有年龄小于18的作家的名字,并且 阅读全文
posted @ 2023-07-20 03:17 名泽 阅读(4) 评论(0) 推荐(0) 编辑
摘要:2.1 概述 Lambda是JDK8中一个语法糖。 他可以对某些匿名内部类的写法进行简化。 它是函数式编程思想的一个重要体现。 让我们不用关注是什么对象。而是更关注我们对数据进行了什么操作。 2.2 核心原则 可推导 可省略 2. 3 基本格式 (参数列表)->{代码} new Thread(()- 阅读全文
posted @ 2023-07-19 22:01 名泽 阅读(19) 评论(0) 推荐(0) 编辑
摘要:为什么学? 能够看懂公司里的代码 大数量下处理集合效率高,因为有并行流,而自己创建处理会有很多问题 代码可读性高 消灭嵌套地狱 本系列将从Lambda表达式、Stream流、Optional、函数式接口、方法引用等顺序开始讲解 //查询未成年作家的评分在70以上的书籍 由于洋流影响所以作家和书籍可能 阅读全文
posted @ 2023-07-19 20:43 名泽 阅读(46) 评论(0) 推荐(0) 编辑
摘要:栈和栈帧 JVM由堆、栈、方法区;栈内存就是给线程使用,当每个线程启动后,虚拟机就会为其分配一块栈内存 每个栈由多个栈帧(Frame)组成,对应每调用一次方法调用时所占用的内存 每个线程中只能有一个活动栈帧,对应当前正在执行的方法 线程上下文切换(Thread Context Switch) 由于一 阅读全文
posted @ 2023-07-19 04:26 名泽 阅读(11) 评论(0) 推荐(0) 编辑
摘要:以前写多线程的弊端 用到线程的时候就创建 用完之后线程消失 为了避免浪费,所以我们需要一个容器 起初线程池是空的,当给线程池提交任务时会自动创建线程去执行任务,执行完后线程不消失,回归线程池,之后就不需要创建线程 当线程正忙着执行一个任务时,会创建新的线程 核心原理 1.创建空池子 2.提交任务时, 阅读全文
posted @ 2023-07-11 05:34 名泽 阅读(12) 评论(0) 推荐(0) 编辑
摘要:一个多线程协作模式 消费者 先判断中间类是否有消费品 没有则等待,有则消费 消费之后唤醒生产者 生产者 判断中间类是否有消费品 有则等待,没有则生产 消费品放在中间类 唤醒消费者 常用方法: 需要用锁对象去调用 void wait() 让当前线程等待,知道被其他线程唤醒 让当前线程跟锁绑定 void 阅读全文
posted @ 2023-07-11 03:10 名泽 阅读(5) 评论(0) 推荐(0) 编辑
摘要:同步代码块解决线程安全问题 当多个线程操作同一数据时会出现问题 会出现多次相同,会超过范围 线程执行代码时,cpu执行权随时有可能被其他线程抢走 所以我们需要把操作共享数据的代码锁起来 需要一个关键字 Synchronized(锁对象){执行代码} 特点一:锁状态默认打开,但一个线程进去了,锁自动关 阅读全文
posted @ 2023-07-11 02:00 名泽 阅读(2) 评论(0) 推荐(0) 编辑
摘要:1.创建线程对象(新建状态) ↓↓↓start()方法↓↓↓ 2.有执行资格没有执行权(就绪状态,不停抢cpu),有资格抢cpu,但目前没有抢到 ↓↓↓抢到执行权↓↓↓ ↑↑↑被其他线程抢到执行权↑↑↑ 3.有执行资格有执行权(运行状态) ————sleep()或者其他堵塞方法————》没有执行资格 阅读全文
posted @ 2023-07-10 04:01 名泽 阅读(8) 评论(0) 推荐(0) 编辑
摘要:getName()和setName() String getName() //返回线程的名称void setName(String name) 设置线程的名字(构造方法亦可设置) 细节: 如果我们没有给线程设置名字,默认名字格式为:Thread-x(x序号,从0开始) 如果给线程设置名字,可以用se 阅读全文
posted @ 2023-07-09 03:13 名泽 阅读(12) 评论(0) 推荐(0) 编辑
摘要:实现方法 ①继承Thread类的方式 将一个类声明为Thread的子类。 这个子类应该重写run类的方法Thread 。 然后可以分配并启动子类的实例。 例如,计算大于规定值的素数的线程可以写成如下: class PrimeThread extends Thread { long minPrime; 阅读全文
posted @ 2023-07-08 17:25 名泽 阅读(6) 评论(0) 推荐(0) 编辑
摘要:并发(concurrent) 同一时间应对多件事情的内力 同一时刻,有多个指令在单个CPU上交替执行 理解:打游戏的时候,右手操作鼠标,同时用右手喝可乐,手速特别快交替执行,这时,你的右手相当于CPU,执行的对象相当于线程 家庭主妇做饭、打扫卫生、喂奶,一个人轮流交替做多件事情,这就是并发 并行(p 阅读全文
posted @ 2023-07-08 16:47 名泽 阅读(8) 评论(0) 推荐(0) 编辑
摘要:线程 线程是操作系统能够进行运算调度的最小单位,他被包含在进程之中,是进程中的实际运作单位 一个线程就是一个指令流,将指令流中的一条条指令以一定顺序交给CPU执行 线程通信比较简单,例子就是多个线程可以访问同一个共享变量,因为它们共享线程内的内存 理解:应用软件中互相独立,可以同时运作的功能 进程 阅读全文
posted @ 2023-07-07 20:19 名泽 阅读(5) 评论(0) 推荐(0) 编辑
摘要:HTTP 状态码参考 2XX 状态码,比如 200-> 请求成功, 5XX 状态码,比如 502-> 服务器异常,通常就是服务没正常运行,或者代码执行出错 通过状态码即可初步判断问题原因,HTTP 状态的设计思路值得借鉴。 比方说 20000-29999 表示订单创建失败: 20001,订单创建失败 阅读全文
posted @ 2023-07-07 03:14 名泽 阅读(20) 评论(0) 推荐(0) 编辑
摘要:当我们只能直接用内存存储40亿个unsigned int 1B=8bit 1KB=1024B 1MB=1024KB 1G=1024MB 内存空间上需要4*4000000000 /1024/1024/1024= 14.9G 使用位图的话,一个数字只需要占用1个bit,那么40亿个数字也就是: 4000 阅读全文
posted @ 2023-07-07 03:09 名泽 阅读(38) 评论(0) 推荐(0) 编辑
摘要:lombok翻车记录: 使用Lombok的Setter-Getter方法的注解,也就是组合注解@Data时 实体类的属性,首字母不应该小写,这会导致null,因为生成的Setter-Getter方法,是首字母大写的 解决方案 1.修改属性名字,让第二个字母小写,或者说是规定所有的属性的前两个字母必须 阅读全文
posted @ 2023-07-07 02:53 名泽 阅读(13) 评论(0) 推荐(0) 编辑
摘要:引言 你是否发现,在springboot项目中,用mvn install打包成jar形式,然后换一台拥有jdk的机器,就可以直接通过java -jar 项目名.jar 的方式运行,没有任何问题并且不需要tomcat 打包成war放进tomcat运行,发现端口号变成tomcat默认的8080(我在se 阅读全文
posted @ 2023-07-06 21:52 名泽 阅读(80) 评论(0) 推荐(0) 编辑

阅读目录(Content)

此页目录为空

点击右上角即可分享
微信分享提示