自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 for循环笔记

示例: for (int num : arr) { System.out.println(num);- 初始化、条件、更新表达式都可省略, for(;- 初始化:只执行1次,一般定义循环变量(如 int i = 0 )- 条件:布尔值, true 执行循环体, false 退出。- 适用于遍历数组/集合,无需索引,无法修改数组元素(基本类型)for (初始化表达式;- 循环变量作用域:仅在循环体内(初始化在括号内时。for (元素类型 变量名 : 数组/集合) {

2025-12-23 08:40:20 52

原创 java笔记2

8种基本数据类型: byte/short/int/long/float/double/char/boolean;- 三大特性:封装( private + get/set )、继承( extends ,单继承)、多态(继承+重写+父类引用指向子类对象)- 体系: Throwable → Error (不可处理)、 Exception (可处理,分运行时/编译时异常)- 处理: try-catch-finally 捕获;- 按数据类型分:字节流(处理所有文件)、字符流(处理文本文件)

2025-12-23 08:37:58 109

原创 java笔记

基本数据类型(8种): byte(1B)、short(2B)、int(4B)、long(8B)、float(4B)、double(8B)、char(2B)、boolean(1B)- 父类: Throwable ,分为 Error (系统级错误,如 OutOfMemoryError ,程序无法处理)和 Exception (程序级异常,可捕获处理)Map 键值对存储,键唯一值可重复 HashMap (线程不安全,效率高)、 Hashtable (线程安全,效率低)、 TreeMap (可排序)

2025-12-23 08:36:33 342

原创 【无标题】java

集合框架包括List(有序可重复)、Set(无序不可重复)、Map(键值对映射)等接口及其实现类如ArrayList、HashMap等。线程状态包括新建、就绪、运行、阻塞、死亡。Java是面向对象的编程语言,具有跨平台性(Write Once, Run Anywhere)、垃圾自动回收、异常处理机制等特点。Java IO分为字节流(InputStream/OutputStream)和字符流(Reader/Writer)。NIO(New IO)提供了更高效的IO操作方式,基于通道和缓冲区,支持非阻塞IO。

2025-11-25 10:53:36 125

原创 java消极处理

1. 核心表现:忽视预判、笼统捕获(直接 catch (Exception e) )、吞异常(无日志/处理)、盲目抛出( throws Exception )。4. 避坑建议:拒绝空 catch 、精准捕获具体异常、必要时抛自定义异常+日志。3. 潜在风险:排查困难、资源泄漏、程序隐性崩溃、异常扩散影响链路。- 捕获后不处理,仅空 catch 块。Java 异常消极处理笔记(精简版)- 不区分异常类型,一刀切捕获。- 随意抛出顶层异常,转移责任。

2025-11-18 10:30:35 375

原创 java积极处理

1. 核心原则:源头预判(输入校验)、精准捕获(不笼统抓 Exception)、记录日志、可恢复优先。3. 避坑:不吞异常、不盲目 throws Exception、finally 不修改返回值。- 用 Optional 防 NPE,try-with-resources 自动关资源。4. 场景建议:网络请求重试、数据库事务回滚、输入非法抛业务异常。- 多异常精准捕获,自定义业务异常区分场景。Java 异常积极处理笔记(精简版)

2025-11-18 10:29:25 318

原创 javalist

删: lst.pop(i) (删索引i元素并返回,默认删最后一个)、 lst.remove(x) (删第一个匹配x的元素)、 del lst[i] (删索引i元素)、 lst.clear() (清空列表)- 切片: lst[start:end:step] ,如 lst[1:4] (取索引1-3元素)、 lst[::2] (步长2,隔一个取一个)、 lst[::-1] (反转列表)- 拼接: lst1 + lst2 (返回新列表),重复: lst * 2 (元素重复2次)- 长度: len(lst);

2025-11-11 15:11:36 228

原创 java map

遍历:推荐 entrySet() (直接取键值对),或 keySet() + get(key)。- key唯一:依赖 hashCode() 和 equals() ,自定义类作key需重写这两个方法。- 定义:双列集合,存 键-值 对,key唯一、value可重复。- LinkedHashMap :有序(按插入顺序)。- TreeMap :按key排序(自然/自定义)。- HashMap :无序、查询快,非线程安全。Java Map 核心笔记。

2025-11-11 09:17:29 84

原创 java list

lastIndexOf(Object) - 获取元素最后一次出现的索引。- indexOf(Object) - 获取元素第一次出现的索引。- contains(Object) - 判断是否包含元素。- subList(int, int) - 获取子列表。- set(int, E) - 修改指定位置元素。- remove(int) - 删除指定位置元素。- get(int) - 获取指定位置元素。- size() - 获取元素数量。- add(E) - 添加元素。

2025-11-04 11:45:09 204

原创 java map

实现类:HashMap(无序)、TreeMap(有序)、LinkedHashMap(插入顺序)- containsValue(value) - 判断是否包含值。- Map 是键值对(key-value)集合,键唯一,值可重复。- put(key, value) - 添加/修改键值对。- containsKey(key) - 判断是否包含键。- keySet() - 获取所有键。- values() - 获取所有值。- get(key) - 获取值。- 无序,元素排列顺序不固定。

2025-11-04 11:44:28 138

原创 基于 Obiect 类及包装类的专项实验

包装类装箱拆箱 num2=100 , d1==d2=false , d1.equals(d2)=true 与预期一致 自动装箱/拆箱是编译器语法糖,底层调用 valueOf() / intValue();- 所有类的父类,核心方法( equals() 、 hashCode() 、 toString() )需按业务逻辑重写,且 equals() 与 hashCode() 必须“逻辑一致”(相等对象哈希值必相同,哈希值相同对象不一定相等)。// 预期false(比较地址,无缓存)

2025-09-22 10:00:26 561

原创 java条件语句

switch表达式类型:支持 byte 、 short 、 int 、 char 、 String (JDK 7+)、枚举( enum )及包装类( Byte 、 Short 、 Integer 、 Character )。- 条件表达式类型:必须是布尔值( true/false ),不能用非布尔值(如C语言的 if (a=5) 在Java中会报错)。System.out.println("通过:成绩达标且考勤通过");System.out.println("不通过:考勤不通过");

2025-06-19 01:32:16 381

原创 java循环语句

System.out.println("1-100偶数和(while):" + sum);System.out.println("1-100偶数和(for):" + sum);System.out.println("循环第 " + i + " 次");System.out.println("至少执行一次:" + i);System.out.println("输入:" + input);

2025-06-19 01:28:35 358

原创 java数组

转字符串: Arrays.toString(arr) (多维数组用 Arrays.deepToString )。- System.arraycopy(源, 源起始, 目标, 目标起始, 长度) :底层高效复制。- Arrays.copyOf(arr, newLength) :复制指定长度。// 数组变为[2, 3, 5]

2025-06-19 01:26:59 379

原创 java主函数

在IDEA/Eclipse中,右键点击包含主函数的类,选择“Run '类名'”即可运行,无需手动输入命令行参数(可在运行配置中设置参数)。// 正确:直接访问静态属性。- System.exit(非0) 表示异常终止(如 System.exit(1) )。System.out.println("接收到参数:");System.out.println("重载的main(不会被调用)");System.out.println("标准主函数");

2025-06-19 01:26:04 547

原创 java函数

在Java中,函数(Method,也称为“方法”) 是封装特定功能的代码块,是面向对象编程的核心组成部分。public void makeSound() { System.out.println("喵喵喵");- 示例:父类 Animal 有 makeSound() 方法,子类 Dog 和 Cat 重写该方法,实现不同的叫声。- 示例: System.out.println() 方法内部实现复杂,但调用时只需传入参数即可。- 调用者只需知道方法的功能和参数(接口),无需了解内部实现,降低使用复杂度。

2025-06-19 01:22:54 312

原创 java语句

System.out.println("错误:" + e.getMessage());System.out.println("无论是否异常,都会执行");System.out.println("分数等级:" + result);// 此处main方法返回void,无需return,但可用于提前终止。// 声明常量(final修饰)// 可能抛出异常的代码。// 跳过i=3的情况。System.out.println("分数分解:");- while/do-while:未知次数的循环(见Java循环)。

2025-06-19 01:20:10 324

原创 java接口

在Java中,接口(Interface) 是面向对象编程的重要概念,用于定义一组行为规范(方法声明),实现接口的类必须遵循这些规范。结合默认方法、静态方法和函数式接口,接口在Java 8及以后版本中功能更强大,成为设计模式(如策略模式、工厂模式)和框架开发的基础。4. 函数式接口(Java 8 Lambda):仅含一个抽象方法的接口,可用于Lambda表达式(如 Runnable 、 Consumer )。- 静态方法( static ):Java 8引入,属于接口本身,通过 接口名.方法() 调用。

2025-06-19 01:18:53 364

原创 java继承

在Java中,继承(Inheritance) 是面向对象编程的核心特性之一,指一个类(子类/派生类)可以继承另一个类(父类/基类)的属性和方法,从而实现代码复用和类型扩展。- 优先使用组合(Composition)而非继承:继承是“is-a”关系,组合是“has-a”关系(如“车有发动机”),组合更灵活,可避免继承层次过深。System.out.println(name + "(品种:" + breed + ")在吃狗粮");Dog dog = new Dog("旺财", 3, "金毛");

2025-06-19 01:17:18 421

原创 java封装

在Java中,封装(Encapsulation) 是面向对象编程的核心特性之一,指将数据(属性)和操作数据的方法(行为)封装在一个类中,并通过访问控制修饰符隐藏内部实现细节,仅暴露必要的接口。System.out.println("姓名:" + name + ",年龄:" + age + ",身份:" + status);- 提供公共的getter/setter方法(遵循命名规范: getXxx() / setXxx() ,布尔类型用 isXxx() )。"成年人" : "未成年人";

2025-06-19 01:15:59 425

原创 java数组

数组转字符串: Arrays.toString(arr) (多维数组用 Arrays.deepToString )。- System.arraycopy(源数组, 源起始索引, 目标数组, 目标起始索引, 复制长度) :高效底层复制。- 排序: Arrays.sort(arr) (升序,基本类型用快速排序,对象用归并排序)。// 3行2列,默认全0。// 数组变为[2,3,5]

2025-06-19 01:15:03 291

原创 java循环

死循环:条件永远为真的循环(如 while(true) ),需配合 break 退出。System.out.println("循环第 " + i + " 次");System.out.println("至少执行一次:" + i);// 条件为假,但仍会执行一次。- continue:跳过当前循环的剩余代码,进入下一次循环。先判断条件,条件为真时执行循环体,适用于未知次数的循环。

2025-06-19 01:14:06 310

原创 java分支

JDK 12+ 新特性:switch 支持表达式写法( var result = switch(...) { ... } ),可简化代码。- break 关键字:在 switch 中用于跳出当前分支,避免继续执行后续 case(若无 break,会发生“穿透”现象)。通过这些分支结构,Java程序可以根据不同条件灵活控制执行逻辑,实现更复杂的业务逻辑。System.out.println("不合格");System.out.println("成年");System.out.println("合格");

2025-06-19 01:13:10 384

原创 java数据常量规范

集合常量建议用 Collections.unmodifiableXXX() 包装(如 static final List<String> COLORS = Collections.unmodifiableList(Arrays.asList("red", "blue")) )。- 类内常量:声明为 static final ,归属于类(如工具类中的常量)。- 枚举常量:在枚举类中直接定义(如 MONDAY(1, "周一") )。- 错误: if (status == 1) (1为魔法数字)。

2025-06-18 15:03:27 775

原创 java标识符规范

不能是Java关键字(如 public 、 static 、 class )或保留字(如 goto 、 const )。- 泛型参数可用单字母(如 T 、 E ),但需符合约定(如 T 代表类型, K 代表键)。1. 类名/接口名:首字母大写,驼峰式(如 UserService 、 List )。- 可使用字母(大小写)、数字、下划线( _ )、美元符号( $ )。- 不建议使用美元符号( $ ),通常用于自动生成的代码(如内部类)。- 不能以数字开头(如 123abc 非法, abc123 合法)。

2025-06-18 15:01:52 343

原创 java代码注释

方法注释:说明功能、参数、返回值、异常(用 @param @return @throws )。- 格式: /* ... */ ,用于临时注释代码块,不推荐频繁使用(避免注释与代码逻辑脱节)。- 行注释建议与代码保持合理缩进,同一代码块内的注释风格需统一(如注释位于代码上方或右侧)。- 注释应简洁,聚焦代码逻辑的背景或特殊处理(如兼容旧版本、性能优化点)。- 避免过度注释(如每一行代码都添加注释),保持代码可读性优先。- 注释与代码逻辑保持同步,代码修改时需更新对应注释。3. 块注释(多行注释)

2025-06-18 15:00:57 1273

原创 java命名规范

接口实现类可加 Impl 后缀(如 UserDaoImpl ),但抽象类不加 Abstract 前缀(抽象类本身已表明性质)。- 抽象类/接口可加 Abstract 或 Impl 后缀(如 AbstractService 、 UserDaoImpl )。- 短变量名仅用于循环索引(如 i 、 j ),其他场景需体现含义(如 userList 而非 list )。- 枚举常量全大写,下划线分隔(如 STATUS_SUCCESS 、 COLOR_RED )。

2025-06-18 14:59:31 643

原创 java数据结构

Map接口:键值对映射,实现类有 HashMap (哈希表)、 TreeMap (红黑树)、 HashTable (线程安全,不推荐)。- List接口:有序可重复,实现类有 ArrayList (数组实现)、 LinkedList (链表实现)。- 队列(Queue):先进先出(FIFO),常用方法: add() 、 poll()。- 栈(Stack):后进先出(LIFO),常用方法: push() 、 pop()。- 链表(LinkedList):动态长度,增删快,随机访问慢(需遍历)。

2025-06-18 14:38:08 347

原创 java环境搭建

在 系统变量 中找到 Path ,添加JDK的 bin 目录(如 C:\Program Files\Java\jdk-21\bin )。- 官网(Oracle JDK 或 OpenJDK)下载对应系统的安装包(如Windows/macOS/Linux)。- 双击安装包,按默认路径安装(记住安装目录,如 C:\Program Files\Java\jdk-21 )。- 右键“此电脑”→“属性”→“高级系统设置”→“环境变量”。Java环境搭建步骤(极简版)

2025-06-18 14:36:38 433

原创 java变量

基本类型(8种): int 、 double 、 char 等,存储值本身。// 先声明,后续赋值:price = 9.9;// 常量,不可修改。- 引用类型:类、接口、数组,存储内存地址(默认 null )。- 局部变量:方法内定义,仅在方法内有效(需初始化才能使用)。- 成员变量:类中定义,可被类中方法访问。

2025-06-18 14:35:16 604

原创 java分支结构

case 3: System.out.println("三");- 匹配常量值,JDK 7起支持字符串,需用 break 跳出, default 处理默认情况。case 1: System.out.println("一");default: System.out.println("其他");System.out.println("小");- 多分支: if-else if-else ,按顺序判断条件执行。System.out.println("大");- 单分支: if (条件) { 代码块 }

2025-06-18 14:34:44 374

原创 java面向对象

类是模板,对象是实例,通过 new 创建(如 Person p = new Person();- 抽象类( abstract class ):含抽象方法,类用 extends 继承并实现抽象方法。- 接口( interface ):定义抽象方法,类用 implements 实现全部方法。- 多态:父类引用指向子类对象,同一方法表现不同行为(如方法重写)。- 继承:子类用 extends 复用父类成员,支持单继承。- 封装:属性私有化,通过方法暴露访问接口,隐藏实现细节。Java面向对象核心。

2025-06-18 14:34:04 288

原创 java内部类

useInterface(() -> System.out.println("Lambda表达式替代匿名内部类"));内部类是定义在另一个类内部的类,它可以访问外部类的所有成员,包括私有成员。System.out.println("静态外部类字段:" + staticField);System.out.println("匿名内部类实现接口");- 可直接访问外部类的成员(包括 private ),外部类访问内部类需通过实例。- 创建辅助类:静态内部类可作为外部类的工具类(如 Map.Entry )。

2025-06-18 14:33:08 324

原创 java核心语法

输出: System.out.println("内容");(换行)、 System.out.print("内容");- 算术运算符: + 、 - 、 * 、 / 、 % (取余)、 ++ / -- (自增/减)。case "周一": System.out.println("工作");case "周日": System.out.println("休息");

2025-06-18 14:32:11 535

原创 java函数笔记

◦ 语法:修饰符 返回值类型 方法名(参数列表) { 方法体;◦ 用static修饰,可通过类名直接调用,不能访问非静态成员。◦ 同一类中,方法名相同但参数列表(个数、类型、顺序)不同。◦ 语法:方法名(数据类型... 参数名),本质是数组。◦ 引用传递:对象类型传递引用地址,可修改对象属性。◦ 必须与声明的返回值类型一致,无返回值用void。◦ 方法自身调用自身,需设置终止条件避免栈溢出。◦ 方法不能嵌套定义,需在类中独立声明。◦ 方法签名由方法名和参数列表共同决定。◦ 与返回值类型、修饰符无关。

2025-06-18 14:30:26 379

原创 java面向对象

1. 方法重写(Override):子类可以重写父类中定义的方法,要求方法名、参数列表和返回值类型必须相同(返回值类型可以是父类返回值类型的子类),修饰符可以扩大但不能缩小,抛出的异常范围可以被缩小但不能扩大。对象是抽象概念的具体实例。我们在认识世界的过程中,首先接触到的是一个个具体的事物(对象),然后通过对这些事物的观察和总结,归纳出它们的共同特征和行为,从而形成类的概念。2. 对象的多态性:可以使用父类的引用指向子类的对象,通过这个引用调用方法时,会根据对象的实际类型来决定调用哪个类的方法。

2025-06-18 14:29:53 348

原创 java三个修饰符

修饰符还包括 protected (受保护,用于限制同一包或子类访问)、 final (最终,不可继承或修改)等,可根据具体场景选择使用。- 作用:被 static 修饰的成员(方法、变量)属于类本身,而非类的实例,可通过类名直接访问,无需创建对象。- 类的修饰符有限,通常使用 public 或默认(包访问权限),而方法和变量的修饰符更为灵活。static void staticMethod() { // 静态方法。public class MyClass { // 公共类,可被所有类访问。

2025-06-18 14:29:18 478

原创 java接口

2. 注意:实现类实现接口,如果实现类不想成为抽象类,则需要实现(覆盖)接口中所有的方法;实现类实现接口中的方法时,方法的访问修饰符必须是 public 的访问权限。2. 降低程序中的耦合度 接口定义好之后,将接口的实现者和接口的使用者分离,借助多态,降低各模块之间的耦合度。2. 注意:遇到接口回调的应用,开发人员需要关注的是根据接口规范,给予接口的实现部分。1. 接口:是一种标准、规范,是接口的实现者和接口的使用者都必须遵循的约定。1. 接口回调:接口定义之后,先有接口的使用者,再有接口的实现者。

2025-06-18 14:28:05 378

原创 Deepseek的发展前景

持续的技术创新使得Deepseek能够紧跟时代步伐,在大模型的预训练策略、多模态融合等方面不断探索新的可能,从而提升模型的性能和能力,为其在不同应用场景下的出色表现奠定了基础。在智能客服与对话系统中,凭借强大的语言理解和生成能力,能为用户提供准确、及时的服务,实现自然流畅的人机对话。而且,随着业务的发展和用户数据的不断积累,数据能够持续更新和优化,让模型及时适应新的语言现象和用户需求。此外,训练和部署大模型需要大量的计算资源,这不仅带来了高昂的硬件投资,还伴随着巨大的能源消耗和运营成本。

2025-03-05 16:26:07 288

原创 初识java

而 Java,作为一门广泛应用且备受瞩目的编程语言,在我踏入编程世界时,就像一颗璀璨的星辰,吸引着我去探索。而控制语句,如 if - else、for 循环和 while 循环等,就像是编程世界中的“交通规则”,引导程序按照我们的意愿执行不同的操作。这种编程思想让我对程序的设计有了全新的认识,不再是简单地编写代码,而是构建一个有序的、相互协作的软件系统。虽然我目前只是刚刚踏入这个世界,但我相信,随着不断地学习和实践,我会在 Java 的海洋中畅游,用这门强大的编程语言创造出属于自己的精彩。

2025-03-05 16:11:38 196 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除