线程 笔记java 11

程序员修炼之道:从小工到专家阅读笔记

程序员要勇于承担错误,这意味着在编程过程中,我们需要敢于面对和解决出现的问题。以下是一些关于勇于承担错误的建议:诚实面对错误:当发现程序中的错误时,不要试图掩盖或忽视它们。诚实地面对问题,承认自己的错误,并寻求解决方案。分析错误原因:在解决问题之前,首先要了解错误发生的原因。通过查看日志、调试代码等 ......
小工 程序员 笔记 程序 专家

程序员修炼之道:从小工到专家阅读笔记2

做程序要及时亡羊补牢修复,这意味着在编程过程中,我们需要时刻关注代码的质量,一旦发现潜在的问题或错误,立即进行修复。遵循编码规范和风格指南,编写易于维护和阅读的代码。这样可以降低出错的可能性,并在出现问题时更容易进行修复。在发现问题时,及时与团队成员沟通,分享自己的发现和解决方案。这样可以提高整个团 ......
小工 程序员 笔记 程序 专家

java.net.ConnectException: Connection refused: no further information

java.net.ConnectException: Connection refused: no further information at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.8.0_91] at su ......

《代码大全》阅读笔记02

第三章 软件创建的先决条件 一. 前期准备的重要性:在本节中主要讲述了前期准备在整个软件开发过程中的重要性。 创造出高质量的项目的实践方法是在项目的前期,中期和后期都强调质量。项目的后期主要是测试,只是质量保证的一个策略,虽然会发现一些Bug,但是类似“程序的结构错误”,“使用错误的方法制造了这个产 ......
代码 笔记 大全

日常记录--day11--2023-9月27日--周三

日程:今天只有上午有节英语课,睡过头了,9点20才起床,怕赶不上就没有吃早饭。中午小睡半个小时,下午没课,起来学习了一下Javaweb,预习了数据结构,锻炼了一下,晚上7-9点继续javaweb。 学了什么:可恶的Javaweb,继续学习Javaweb。 PS:不想学习,想要成为餐巾纸; ......
2023 day 11

java方法实践

截取2个指定字符之间的字符串 public String splitData(String str, String strStart, String strEnd) { String tempStr; tempStr = str.substring(str.indexOf(strStart) + 1 ......
方法 java

面试之Java八股文

面向过程与面向对象 面向过程 顾名思义,注重过程。解决问题时按步骤一步一步来,在程序中体现为按照一定顺序执行方法 优点:效率高,无需类加载、对象实例化 缺点:程序耦合度高 面向对象 顾名思义,注重对象。解决问题时先抽象出场景中的对象(实体类),给其添加属性和方法,让对象去执行方法 优点:程序易维护、 ......
八股文 八股 Java

9.27日Java动手动脑练习

1 public class Main { 2 public static void main(String[] args) { 3 Foo obj1=new Foo(); 4 Foo obj2=new Foo(); 5 System.out.println(obj1==obj2); 6 } 7 s ......
9.27 Java 27

《软件工程:一种实践方法》阅读笔记二

《软件工程:一种实践方法》是一本经典的软件工程教材,它以系统化的方式介绍了软件工程的核心概念和方法。读完这本书后,我对软件工程的理解更加深入,同时也获得了许多实用的技巧和经验。首先,这本书强调软件开发应该是一种工程化的过程,与传统的手工制作相比,它需要使用科学的方法和规范化的流程来确保产品质量和项目 ......
软件工程 笔记 方法 工程 软件

Java数据类型

Java数据类型 摘自狂神说java的PPT 什么是字节 1bit表示一位 1Byte表示一个字节 1024B=1KB 1024KB=1M 1024M=1G ......
类型 数据 Java

java数据类型拓展

java数据拓展 public class demo3 { public static void main(String[] args) { //整数拓展: 进制 二进制0b 十进制 八进制0 十六进制0x int i1=10; int i2=010; int i3=0x10; System.out ......
类型 数据 java

《架构师之路:软件架构之美》第二章读书笔记

第二章的主题是 "Programming Paradigms"(编程范式),该章讨论了不同的编程范式以及它们如何影响软件架构的设计。以下是该章的一些主要观点和内容: 编程范式概述:该章首先介绍了编程范式的概念,说明了编程范式是一种编程风格或方法论,它影响了代码的组织方式和设计方式。 常见的编程范式: ......
架构 第二章 笔记 软件

猫树 学习笔记

猫树是什么? 猫树,是 immortalCO 在 这篇文章 提出的一种类似线段树的数据结构。猫树可以处理支持结合律的信息,如区间最大值、区间最大子段和、区间 \(\gcd\) 等。在维护的信息可以 \(\mathcal{O}(k)\) 合并时,猫树能用 \(\mathcal{O}(kn\log n) ......
笔记

Java多线程实现生产者与消费者模型

java多线程实现生产者与消费者模型 //测试类 public class TestPC { public static void main(String[] args) { SynContainer container = new SynContainer(); new Thread(new Pr ......
生产者 线程 模型 消费者 Java

Java实现跳表

在这里记录自己查询网上资料后自己实现的JAVA版本跳表的代码,比较简陋。实现过程中遇到个低级错误,在方法内部尝试修改实参引用的指向是无效的(实际上修改的是形参指向,方法内部只能修改实参指向的具体内容,无法修改实参指向),以后一定切记。 public class SkipList { private ......
Java

Java网络编程NIO实现简易多人聊天室

BIO模型 BIO即blocking IO,顾名思义是一种阻塞模型。当没有客户端连接时,服务端会一直阻塞,当有客户端新建连接时,服务端会新开一个线程去响应(不用多线程的话服务端同一时刻最多只能接收一个连接)。但不断的新开线程对服务器的压力是巨大的,为了缓解压力可以采用线程池技术实现线程复用,但这种做 ......
网络编程 简易 聊天室 多人 网络

梦段代码阅读笔记02

1、对该项目的人的认识 不得不承认的一点是,这个项目的基础特别棒,在万众瞩目下开启开发的旅程,历时七年,在完工之际,已经没有人为之喝彩; 项目团队人人都很优秀,在我眼里,他们不仅仅是久远时光里的一个出名的项目团队,他们还是独一无二的编程“疯子”,他们热爱编程、享受编程, 不屑于将自己的精力放在查找前 ......
代码 笔记

赛码网编程题--打字(Java全A)

题目描述 小明很喜欢打字,今天小红给了小明一个字符串。这个字符串只包含大写和小写字母。 我们知道,按下CapsLock键,可以切换大小写模式。我们在小写模式时候,同时按下shift+字母键,就能写出大写字母。在大写模式的时候,按下shift+字母键,就能写出小写字母。现在问题来了,给你一个字符串,问 ......
Java

ACAM 学习笔记 | 附 YbtOJ 全部题解

怎么有人现在才学 ACAM 呢。 好像比 SAM 简单挺多啊,也不记得当时是哪里看不懂。 AC 自动机(✔) 自动 AC 机(✘) 概述 ACAM(Aho–Corasick Automaton),是用来解决多模式串匹配的字符串算法。它的结构是个 DAG,其中点表示状态,边表示转移。这一点上各种自动机 ......
题解 笔记 YbtOJ ACAM

Atcoder ABC321 笔记

A - 321-like Checker \(\color{gray}{22}\) 直接模拟 void solve() { int n; cin >> n; int lst = -1; for(int i = n; i; i /= 10) { int u = i % 10; if(u <= lst) ......
Atcoder 笔记 ABC 321

Java动手动脑

动手动脑Ⅰ 程序为什么出错:因为构造函数仅有有参构造。如果类提供了一个自定义的构造方法,将导致系统不再提供默认构造方法。 试验 public class Main { public static void main(String[] args) { d n=new d(); System.out.p ......
Java

CS61A: Structure and Interpretation of Computer Programs 笔记

Functions Environment Diagrams:左侧为 Frames,右侧为 Objects。 Name 类似变量名,它们存储在 Frame 中,指向各种各样的 Objects,比如值或函数。一个 Name 同时只能指向一个 Object,但可以改变自身指向,不受“类型”影响(Name ......

舞蹈链学习笔记

Dancing Links X 1. 问题引入 给定一个 \(N\) 行 \(M\) 列的 \(01\) 矩阵 \(A\)(\(N,M\leq 500\)),选出若干行 \((T_1,T_2,\cdots,T_k)\),使得 \(\forall j\in [1,m],\sum\limits_{i=1 ......
舞蹈 笔记

【Java】SpringBoot邮件发送实现

Springboot3 邮件发送 哔哩哔哩 萌狼蓝天 微信公众号 萌狼蓝天 依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </ ......
SpringBoot 邮件 Java

JDK安装、java环境配置

JDK是Java语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JAVA基础的类库。 JRE(Java Runtime Environment,Java运行环境),运行JAVA程序所必须的环境的集合,包 ......
环境 java JDK

力扣刷题笔记-06 N字形变换

06 N字形变换 不要混日子,小心日子把你混了 对于题目的理解 比如说,我给一个字符串,LEETCODE,行数为3,然后按照N字形排列,就是下面这个排列方式。排列完之后正常读取,结果就是LCETOEED。这叫做N字形变换。 这个例子里给的行数就是3,往下排三行,然后往右往上走。 chatGPT 思路 ......
字形 笔记 06

延时双删就是操作线程进出数据库经过缓存各删一次

文章目录 1、何为延时双删 2、常用缓存策略 2.1、介绍 2.2、先删缓存后更库 2.3、先更库后删缓存 2.4、使用场景 3、延时双删实现 4、为什么要使用延时双删 5、方案选择 6、延时双删真的完美吗 7、如何确定延时的时间 1、何为延时双删 延迟双删(Delay Double Delete) ......
线程 缓存 数据库 就是 数据

JAVA 单例设计模式

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该 ......
设计模式 模式 JAVA

java程序,如何打印详细报错堆栈信息

try { System.out.println(1/0); } catch (final Exception e) { log.error("ERROR", "Error found: ", e); log.error("ERROR", "Error found: " + e.getMessage ......
堆栈 程序 信息 java

JAVA高级教程

高级教程 数据结构 枚举 一种从数据结构中取回连续元素的方式 位集合 可以单独设置和清楚的位或标志 向量 Vector 是一个基于动态数组的集合类 栈 实现了一个后进先出的数据结构 字典 定义了键映射到值的数据结构 哈希表 在用户定义键结构的基础上来组织数据的手段 属性 通常指的是类和成员变量,用户 ......
教程 JAVA