自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何更有效率的学习java

按“基础语法→面向对象(类、继承、多态)→常用API(集合、IO、多线程)→框架(Spring、MyBatis)”的顺序推进,每学一块就画思维导图,明确这块知识的核心问题(比如“多线程解决什么场景?”“集合框架各容器的区别?- 进阶阶段:找经典练手项目(图书管理系统、博客系统),强制自己用学到的知识解决问题(比如用集合存数据,用多线程处理并发任务),遇到卡壳再回头查资料,比单纯看书效率高10倍。- 视频课选口碑好的(比如黑马、尚硅谷的基础课),重点看“老师如何分析问题、拆解代码”,而不是只抄代码。

2025-07-08 16:45:47 161

原创 如何更好的使用豆包

例如,让它写文章时,要明确主题、风格、字数等要求,如“请写一篇关于人工智能发展趋势的议论文,风格严谨,字数 2000 字左右”。看到感兴趣的图片,想知道相关信息,可使用拍照问功能,让豆包进行识别和解答。豆包会不断更新,推出新的功能和优化现有功能。你可以关注相关的官方信息、社交媒体等,及时了解新功能的特点和使用方法,像新出的 AI 修图、照片动起来等功能,能为你带来更多的便利和乐趣。- 多尝试不同表述:如果对生成的结果不满意,可换用不同的提示词重新提问,或者提出更具体的修改要求,让豆包进一步优化。

2025-07-03 23:10:08 365

原创 学不进去却要考试怎么办

拆分任务:把复习内容分成10分钟小模块,比如“背10个单词”“做1道计算题”,完成就打勾,成就感会推着你继续。- 先划重点:找老师画的范围或往年真题,圈出高频考点,先攻克能快速提分的部分,别贪多。- 给自己设限时:比如“先学40分钟,然后玩10分钟手机”,用短时间专注换效率,别硬熬。- 换个环境:如果在家躺平学不进去,就去图书馆、自习室,周围人学习的氛围会传染你。- 用输出倒逼输入:对着空气讲知识点,或者拿张纸边写边记,比干看书记忆更牢。

2025-06-24 15:29:48 177

原创 Java中方法的默认行为是什么?

Java方法的默认行为本质是语言层面的“约定俗成”,从访问权限到参数传递,再到接口与继承场景的默认实现,这些规则既保证了代码的简洁性,也避免了潜在的逻辑漏洞。在Java中,方法的“默认行为”可从不同维度理解,包括未显式定义时的隐含规则、参数与返回值的默认处理,以及特殊场景下的默认实现。- 静态方法属于类,默认通过 类名.方法名 调用,无法通过对象实例调用(虽允许但不推荐),且不能访问非静态成员(隐含 this 不可用)。- 返回类型需兼容(可协变,如父类返回 Object ,子类可返回 String )。

2025-06-23 18:49:37 269

原创 Java中关于方法的其他特性

Java方法的特性贯穿面向对象编程的核心逻辑,从参数传递机制到静态/动态绑定,再到Lambda时代的方法引用,这些特性共同构成了Java灵活且严谨的方法体系。- 特点:使用 native 关键字声明,无方法体,通过JNI(Java Native Interface)调用非Java代码(如C/C++)。- 应用场景:工具类方法(如 Math.sqrt() )、单例模式的 getInstance() (常配合 static 字段)。// str仍为"abc"(字符串不可变,修改引用副本指向新对象)

2025-06-23 18:45:26 448

原创 Java的方法重载和方法重写有什么区别?

多态实现:父类引用指向子类对象时,调用子类重写的方法(如 List list = new ArrayList();编译器行为 编译时根据参数类型确定调用哪个方法(静态绑定) 运行时根据对象实际类型确定调用哪个方法(动态绑定)- 方法名、参数列表、返回值类型必须完全相同(JDK5+支持协变返回,即子类返回值为父类返回值的子类)。目的 通过参数差异实现功能扩展(多态的静态形式) 通过子类覆盖父类逻辑实现多态(运行时多态)- 重写是“子类覆盖父类”的纵向覆盖,发生在继承体系中,是运行时期的多态。

2025-06-23 18:44:03 386

原创 Java的方法重载

合理使用重载可减少方法名数量,提升API的易用性,但需注意参数匹配的优先级,避免因重载逻辑复杂导致的调用歧义哦~在Java中,方法重载(Method Overloading) 是面向对象编程的重要特性,指在同一个类中定义多个同名方法,但通过参数列表的不同来区分它们。- 为不同参数类型提供同名方法,避免记忆多个方法名(如 Arrays.sort() 可排序 int[] 、 String[] 等)。- 参数列表不同:参数的数量、类型或顺序不同(至少满足其一),与返回值类型、访问修饰符无关。

2025-06-23 18:41:32 376

原创 如何调整方法区的大小?

设置初始大小:用 -XX:MetaspaceSize 设置元空间的初始大小。- 设置最大大小:通过 -XX:MaxMetaspaceSize 指定元空间的最大限制,默认无限制。- 设置最大大小:使用 -XX:MaxPermSize 设定永久代最大可分配空间,如 -XX:MaxPermSize=256m 表示最大为256MB。- 设置初始大小:通过 -XX:PermSize 参数设置永久代的初始分配空间,例如 -XX:PermSize=64m 将初始大小设置为64MB。

2025-06-23 18:36:12 208

原创 如何检查和排除方法区的内存溢出问题?

若程序抛出 java.lang.OutOfMemoryError: Metaspace (JDK8+)或 PermGen space (JDK7及之前),基本可确定为方法区问题。- 动态代理(Spring AOP、Hibernate代理)、字节码增强(CGLIB、Javassist)、反射生成类(如 Proxy.newProxyInstance )。- 框架选型:避免使用高动态性框架(如CGLIB),优先选择原生代理( java.lang.reflect.Proxy )或轻量级字节码工具。

2025-06-23 18:34:08 326

原创 介绍一下Java中方法区和堆内存的区别

属于JVM规范定义的内存区域(JDK8后由“永久代”改为“元空间”,底层使用本地内存),用于存储类的元数据(如类结构、方法定义)、静态变量、常量、已编译的字节码等,是线程共享的区域。是JVM中最大的内存区域,用于存储对象实例和数组,所有new创建的对象都在堆中分配内存,也是线程共享的区域,但对象的访问需要考虑线程安全。- 分代回收:堆分为新生代(对象存活率低,用复制算法回收)和老年代(对象存活率高,用标记-整理算法回收),提升GC效率。- 堆内存是“对象的摇篮”,动态分配对象空间,依赖GC回收无用对象。

2025-06-23 18:24:23 324

原创 Java继承关系中的内存分配

System.out.println("父类构造函数,parentField = " + parentField);Base() { System.out.println("Base构造函数");static { System.out.println("父类静态代码块");static { System.out.println("子类静态代码块");static { System.out.println("Sub静态块");Sub() { System.out.println("Sub构造函数");

2025-06-23 18:12:20 978

原创 Java语言的特点

原理:Java代码编译为字节码( .class 文件),可在任何安装JVM的系统(Windows、Linux、Mac等)上运行,无需针对不同平台重写代码。- 自带大量核心包(如 java.lang 、 java.util 、 java.io ),覆盖字符串处理、集合、IO、网络、数据库等场景。- 反射机制( java.lang.reflect ):运行时获取类信息、动态创建对象、调用方法。- 生态庞大:第三方库(如Spring、MyBatis、Hadoop)和框架丰富,开发效率高。

2025-06-23 18:06:46 310

原创 Java的常用系统包

LocalDate (日期)、 LocalTime (时间)、 LocalDateTime (日期时间)。- javax.swing :高级组件( JFrame 、 JPanel 、 JTable )。- 日期时间: Date 、 Calendar (Java 8后推荐 java.time 包)。- 日常开发: java.lang 、 java.util 、 java.io 几乎必用。- java.awt :基础组件( Frame 、 Button )、布局管理器。

2025-06-23 18:05:16 360

原创 一维数组的使用

下标越界异常:访问超出长度的下标会报错( ArrayIndexOutOfBoundsException ),例如 nums[5] 对长度为5的数组来说下标最大是4。for (int num : nums) { // 遍历每个元素,num依次取nums中的值。// 升序排序,排序后nums=[1,2,5,8]String[] names = {"张三", "李四", "王五"};

2025-06-23 17:49:49 312

原创 Java里throw和throws的区别

throws :仅声明异常类型,不负责处理异常,调用该方法时必须处理这些异常(用 try-catch 捕获或继续用 throws 声明)。- throw :抛出异常后,若没有被 try-catch 捕获,会向上层调用者传递异常,导致方法终止执行。- throws :声明方法可能抛出的异常类型,用于方法签名中,告诉调用者该方法可能抛出哪些异常。遇到异常问题时,先想清楚是要“主动抛出异常”还是“声明方法可能的异常”,再选择对应的关键字~ 😊。// 调用throws声明的方法时,必须处理异常。

2025-06-23 17:46:58 1041

原创 跟着ai学习

问高频面试题:比如“Java中synchronized和Lock的区别”“如何解决缓存击穿问题”,AI会给你分点回答,还能补充底层原理(比如synchronized是JVM内置锁,Lock是API层面的锁)。小技巧:用AI时尽量“说清楚需求”,比如“用Java写一个冒泡排序,要求加上时间复杂度分析,并用ArrayList存储数据”,越具体,AI给的答案越精准~ 你最近在用AI学什么呀?”,AI会列计划(第1周学语法,第2周练OOP,第3周做小项目)。3. 用AI学“大厂级代码”

2025-06-23 17:38:40 391

原创 Java语言的学习技巧

语法规则:先学变量、数据类型、运算符、条件语句(if/else)、循环(for/while)等基础语法,这是写代码的“积木”。- 刷题巩固:去LeetCode、力扣(LeetCode中国版)或牛客网刷简单算法题,比如“两数之和”“反转字符串”,练逻辑思维。- 新技术方向:了解Java 17+的新特性(如密封类、模式匹配),学分布式、云计算(Docker、Kubernetes)。- 面向对象编程(OOP):重点理解类、对象、封装、继承、多态,比如用“学生类”“教师类”练习创建对象和方法调用。

2025-06-23 14:44:07 815

原创 deepseek的好处

融入的MoE架构可智能分配计算任务,提高计算效率,让模型在处理大规模数据和复杂任务时游刃有余。在数学推理、代码生成、文本风格迁移等多个领域表现优秀,能迅速准确地解决各种问题,如解数学题、生成高质量代码、进行文本风格转换等。多模态模型能同时处理和理解视觉与文本数据,具备强大的跨模态穿透与融合感知能力,可实现多种模态的高效推理与协同输出。运用低秩键值联合压缩技术等,对关键数据进行高效压缩,在减少存储需求的同时不降低性能,使推理速度显著提升。

2025-06-23 14:40:03 383

原创 c语言表达格式

printf() :格式化输出,如 printf("年龄:%d\n", age);- scanf() :格式化输入,如 scanf("%d", &age);- 函数体、条件语句( if )、循环语句( for 、 while )等需用 {} 包裹代码块。- 变量、函数名需见名知意,通常用小写字母,单词间用下划线分隔(如 student_score )。int main() { // main函数,返回值类型为int。- 多行注释: /* 这是多行注释,可跨越多行 */

2025-06-19 15:02:19 381

原创 Java的条件语句

Java中的条件语句用于基于不同条件执行不同的代码块。语句用于判断一个条件是否为真,如果为真则执行对应的代码块。语句用于多分支选择,适用于对固定值进行匹配的情况。的简化形式,适用于简单的条件判断。当需要检查多个条件时,可以使用。语句在条件为真时执行。

2025-06-19 14:24:50 162

原创 Java异常类的方法

及其子类)提供了一系列方法用于获取异常信息、堆栈跟踪和处理逻辑。返回堆栈跟踪的数组,每个元素代表一个堆栈帧(类名、方法名、文件名、行号等)。将堆栈跟踪信息输出到标准错误流(System.err)。返回异常的详细描述信息(通常为构造时传入的字符串)。返回导致当前异常的底层原因(若存在),否则返回。设置当前异常的原因(链式异常),只能调用一次。返回本地化的异常描述信息,默认与。将堆栈跟踪信息输出到指定。将堆栈跟踪信息输出到指定。相同,可被子类重写。

2025-06-19 14:20:49 262

原创 Java子类继承规则

Java中的继承机制允许子类(派生类)继承父类(基类)的属性和方法。

2025-06-19 14:14:54 343

原创 Java程序的异常处理

继承Exception(Checked)或(Unchecked)创建自定义异常。try {throw new CustomException("自定义异常");

2025-06-19 14:12:48 147

原创 JavaString类的使用

String类是Java中用于表示字符串的核心类,位于java.lang包中。字符串是不可变的,一旦创建就不能修改,任何对字符串的修改操作都会生成一个新的字符串对象。使用加号(+)可以连接字符串,实际是通过StringBuilder实现的。通过字面量方式创建字符串会检查字符串常量池,若存在则直接引用,否则新建对象并放入池中。对于频繁修改字符串的场景,建议使用StringBuilder(非线程安全)或StringBuffer(线程安全)。split方法根据正则表达式拆分字符串,join方法连接字符串数组。

2025-06-19 14:08:38 304

原创 Java程序的控制结构

顺序结构是最基本的控制结构,代码按照从上到下的顺序逐行执行。适用于多分支选择,需注意。

2025-06-19 14:04:56 154

原创 Java的多维数组

Java中的多维数组实际上是数组的数组。最常见的形式是二维数组,可以想象为表格或矩阵。声明多维数组时需指定各维度的大小。// 3行4列的二维数组// 三维数组。

2025-06-19 14:03:00 217

原创 Java程序编程规范

继承。

2025-06-19 14:00:22 259

原创 Java程序的执行过程

Java程序的执行过程分为编写、编译、加载、验证、准备、解析、初始化、使用和卸载几个阶段。

2025-06-19 13:58:11 251

原创 Java语言的特点

Java通过JVM(Java虚拟机)实现跨平台运行,代码编译为字节码后可在任何支持JVM的系统上执行,无需重新编译。强类型检查、异常处理机制和运行时检查(如数组越界)增强程序稳定性。企业级框架(如Spring)、大数据工具(Hadoop)、安卓开发等扩展应用场景。JNI(Java Native Interface)支持与其他语言(如C/C++)交互。所有代码必须包含在类中(除基本类型外),连基本类型也有对应的包装类(如。JIT(即时编译)技术将热点代码编译为机器码,提升执行效率。关键字)和并发工具包(

2025-06-19 13:55:00 167

原创 C语言学习路径

学习C语言需要从基础语法开始,包括变量、数据类型、运算符、控制结构(如if-else、for循环、while循环)和函数。掌握这些内容是后续学习的基础,可以通过编写简单程序如计算器或成绩管理系统来巩固。指针是C语言的核心概念之一,理解指针的用法和内存管理机制(如动态内存分配)至关重要。可以通过实践操作内存地址、数组和指针的关系来加深理解,例如实现字符串操作或链表结构。从数组、链表、栈、队列入手,逐步过渡到排序和查找算法。文件操作是实际项目中常用的功能,需掌握文件的打开、读写和关闭。

2025-06-19 13:50:56 170

原创 Java异步编程难题拆解技术文章大纲

【代码】Java异步编程难题拆解技术文章大纲。

2025-06-19 13:48:44 187

原创 Java语言的历史

◦ 1998 年 Java 1.2 更名为 Java 2,推出 J2SE(标准版)、J2EE(企业版)、J2ME(移动版),引入集合框架、Java 虚拟机热点编译(JIT)等,奠定企业级开发基础。◦ 自 Java 9 起,Oracle 改为每 6 个月发布一个版本(如 Java 10、11、12 等),并指定 Java 8、11、17 为长期支持(LTS)版本,提供数年更新维护。◦ 2004 年 Java 5(1.5)重大更新,加入泛型、自动装箱/拆箱、枚举、注解等特性,提升开发效率。

2025-06-19 13:41:35 347

原创 java的学习

Java 学习是一条“从语法到架构”的渐进之路,关键在于“理论+实战”的结合。定期阅读 Java 核心类(如 ArrayList、HashMap)和框架源码(Spring、MyBatis),记录设计模式应用(工厂模式、策略模式等)。跟踪 Java 新版本特性(如 Java 17 的密封类、Java 21 的虚拟线程),了解业界技术趋势(云原生、Serverless)。◦ 常用 GC 算法(标记-清除、复制、标记-整理)及对应的垃圾收集器(Serial、Parallel、CMS、G1)

2025-06-19 13:39:04 427

原创 Deepseek的发展前景和背景

Deep Seek作为一家专注于深度搜索技术的初创公司,将继续加大在技术研发和市场推广方面的投入,不断提升自身的核心竞争力,拓展更广阔的市场空间。随着人工智能和大数据技术的不断发展,Deep Seek有望在未来成为搜索引擎领域的领先企业之一,为用户提供更加智能化和个性化的搜索服务,推动整个行业的进步和发展。Deep Seek的创始人团队具有扎实的技术背景和丰富的经验,他们深谙信息检索领域的技术和市场需求,致力于利用人工智能和大数据技术来改善现有的搜索引擎的效率和准确性。

2025-03-06 16:25:08 319

原创 初识Java

这种编程思想也降低了代码的耦合度,当需要修改或更新程序时,只需修改对应的对象,而不影响其他部分的代码。总的来说,Java 的发展为我们带来了许多好处,从技术上提升了开发效率和程序的可维护性,从安全角度保障了系统的稳定和用户数据的安全,从就业市场角度拓展了个人的发展空间。因此,我们应该继续关注 Java 技术的发展,不断学习和提升自己的技能,以应对未来的挑战和机遇。作为一门流行的编程语言,Java 的发展对我们带来了许多好处,从个人开发者到企业级应用,都受益于 Java 技术的发展。

2025-03-06 16:19:16 171

空空如也

空空如也

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

TA关注的人

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