- 博客(39)
- 收藏
- 关注
原创 【网络编程】综合小练习
本文展示了Java网络编程的多个实践案例:1)基础客户端/服务器通信,实现数据收发功能;2)带反馈机制的双向通信;3)文件上传服务,处理文件名冲突问题;4)多线程和线程池优化的服务端实现;5)BS架构模型演示。这些案例覆盖了网络编程中的核心概念,包括Socket通信、多线程处理、文件传输等,并针对实际开发中的常见问题(如文件重名)提供了UUID解决方案。代码示例完整,适合作为Java网络编程的学习参考。
2025-07-15 19:42:26
181
原创 【网络编程】懒得学复杂协议?UDP/TCP 通信代码模板,复制粘贴就能跑,含中文乱码解决方案
本文介绍了Java网络编程中的UDP和TCP通信方式。UDP部分详细讲解了单播、组播和广播三种通信模式的实现代码,包括发送端和接收端的编写方法。TCP部分展示了基本的客户端-服务端通信流程,并解决了中文乱码问题。文章还简要说明了TCP三次握手和四次挥手的连接机制,帮助理解TCP协议的可靠性特点。这些代码示例为Java网络编程提供了实用参考,适合网络通信初学者学习使用。
2025-07-15 18:06:32
450
原创 【网络编程】调试 3 天的设备终于联网了!UDP 通信踩坑指南,看完少走弯路
【网络编程入门指南】本文介绍了网络编程基础知识,包括BS/CS架构的适用场景对比(BS适合商城类应用,CS适合高画质游戏)。重点讲解了网络编程三要素:IP地址(IPv4/IPv6)、端口号(通信通道标识)和协议(UDP/TCP差异)。通过Java代码示例演示了UDP协议的发送/接收实现,并提供一个多人聊天室练习方案:多个发送端通过255.255.255.255广播地址向同一接收端传输键盘输入内容,形成简易群聊效果。文章包含IP地址分配技巧(如局域网内网IP节省)、InetAddress类使用方法等实用内容,
2025-07-14 17:58:59
332
原创 【多线程】 线程池设多大才合理?CPU 密集型和 I/O 密集型的终极公式
文章摘要:本文介绍了线程池的概念及其实现方式。通过"买碗"的故事类比,说明线程池可以避免频繁创建销毁线程的资源浪费。Java提供了两种线程池创建方式:无上限的newCachedThreadPool和固定大小的newFixedThreadPool。文章重点讲解了如何自定义线程池,包括核心线程数、最大线程数等参数配置,并用饭店员工做类比解释线程池工作原理。最后讨论了如何根据CPU核心数和任务类型(CPU密集型或I/O密集型)合理设置线程池大小,并提供了查看系统最大并行数的方法。
2025-07-13 18:30:01
647
原创 【多线程练习】 从 “线程小白” 到 “并发能手”:这 6 个案例陪我渡过了多线程入门关
本文展示了多个Java多线程编程实例:1) 电影票售卖系统模拟两个窗口售票;2) 礼品赠送程序模拟两人同时发送礼品;3) 两个线程协作输出1-100的奇数;4) 微信抢红包模拟,包括两种实现方式(基本版和精确版);5-7) 抽奖系统模拟,包括三种不同输出方式的实现(即时输出、汇总输出和最大值比较)。这些案例演示了线程同步、共享数据控制、随机数生成等核心多线程技术,使用synchronized关键字确保线程安全,并通过不同的业务场景展示了多线程的实际应用。
2025-07-13 17:12:32
52
原创 你会正确地导入一个项目吗?这个方法让你的效率起飞
《高效导入项目的正确方法》摘要 本文介绍了在IDEA开发环境中正确导入其他项目的操作步骤。主要方法是:通过File菜单进入Project Structure,选择Modules导入功能,定位到目标项目的.iml配置文件完成导入。这种方法可以避免逐个导入包的繁琐操作,提高工作效率。文章还提供了详细的操作指引和注意事项,帮助开发者正确完成项目导入,减少不必要的错误和工作量。适合需要频繁导入其他项目的开发者和学习者参考。
2025-07-13 07:27:53
151
原创 【多线程】线上事故血的教训:线程不安全让公司损失 200 万!3 条铁律记好
【线程安全与同步机制实践】文章通过电影院售票案例演示了多线程并发问题:超卖(卖出101/102张票)和重复票。分析原因是线程执行的随机性导致共享数据不同步。解决方案包括: 同步代码块 - 使用synchronized锁定共享资源 同步方法 - 用synchronized修饰方法 Lock锁 - 更灵活的锁机制 重点强调了锁对象唯一性、同步范围控制等细节。随后扩展到生产者-消费者模式,对比了两种实现: ① 传统wait/notify机制 ② 阻塞队列(ArrayBlockingQueue)
2025-07-12 18:00:39
1343
原创 电脑怎么长截屏?
摘要:小杨发现电脑无法长截屏后,尝试多种方法未果。最终通过QQ实现:登录QQ后打开对话窗口,点击剪刀图标截图,调整范围后匀速滑动滚轮进行长截屏,最后确认即可完成操作。
2025-06-23 10:16:26
402
原创 如何面对别人质疑你的努力没有结果?
肚子上的赘肉并没有明显的减少,但是我自己知道已经锻炼出了两块腹肌,并且健身让我的改变更多是精神上的。我想这句话说出来对方应该是没有过脑子的,可能是随口而出。根据熵增定律,人的一生遇到不喜欢你的人要远大于喜欢你的人。对于这种人最好的应对方式就是不去管他们的质疑,而是持续努力用行动证明自己。我想写写我对这件事的想法和你共勉,我们一起努力,不要在乎别人的看法。所以面对别人质疑你的努力没有结果时,告诉自己继续努力,继续行动,你越是靠近成功,受到的质疑就越多。扛过黎明前的黑暗,属于你的光明终将到来。
2025-06-13 11:03:32
179
原创 和自己段位高的人谈话是什么感受?
A请上级帮个忙,上级没有帮,而另外的同事让上级帮忙,上级就帮忙了。在A下属看来,上级偏袒其他同事,针对自己,区别对待。但是在上级的角度来说,自己手上有很多活动要考虑,而且有大量其他同事的事要处理,上级真的会忘,会不记得A同事的请求。所以要换位思考,其实角度不一样看到的东西不一样理解的东西不一样,自然而然会歧义会误会。2.你付出的东西足够,你做的东西足够,一定会有回报和回响,可能回报和回响不在当下而是在未来的某一刻而已。还有对于利于自己的事情是需要自己主动寻求帮助的,不要想着等别人主动来帮你,那是很少的。
2025-06-10 20:58:12
177
原创 【多线程】0 分钟上手!多线程创建与控制的保姆级教程
本文介绍了Java多线程编程的核心概念和实现方法。主要内容包括:线程定义(进程中的实际运作单位)、并发与并行的区别、三种多线程实现方式(继承Thread类、实现Runnable接口、Callable接口配合Future接口)。文章详细讲解了线程常用方法(命名、休眠、优先级设置)、守护线程特性以及礼让(yield)和插队(join)操作。通过代码示例展示了多线程的实际应用,强调多线程能提高CPU利用率,但也指出线程调度具有随机性。最后总结了线程优先级设置和守护线程的应用场景。
2025-06-10 11:29:52
1191
原创 【IO流】99% 开发者不知道:Properties 类还能这样玩!
本文介绍了Java中静态代码块的使用场景和配置文件的概念。静态代码块适用于类首次加载时执行且数据不变的场景,构造方法则用于每次创建对象时可能改变数据的场景。配置文件用于永久存储软件设置,修改时无需改动代码,常见类型包括xml、ini、properties和YAML。重点讲解了properties文件的键值对存储方式,并演示了Properties类的基本操作、与IO流结合的读写方法。文章还强调了配置文件在软件参数修改时的便利性,如游戏界面设置等场景中的应用。
2025-06-09 11:14:24
387
原创 【IDEA使用】程序员救星!3 步搞定项目导入,告别手动改路径浪费时间
如何正确导入项目避免路径问题 正确导入项目可以避免手动修改路径的麻烦。首先将目标项目复制到当前项目目录下,注意删除同名文件。然后通过File->Project Structure->Modules,点击"+"选择Import Module,找到项目中的.iml文件确认即可。这种方法能快速完成项目导入,无需逐个修改路径。
2025-06-09 09:52:14
100
原创 【爬虫】爬取 10 万姓氏数据?正则表达式 + 随机生成实战教程
本文介绍了四种Java数据生成与处理方法:1) 网络爬虫获取姓氏和姓名数据,通过正则处理并生成带年龄的随机用户信息;2) 使用糊涂包简化数据爬取和处理流程;3) 实现多种随机点名算法,包括基础随机、性别权重控制和"第三必点张三"逻辑;4) 带权重的随机算法,通过二分查找实现概率选择并动态调整权重。这些方法展示了数据采集、清洗、生成和随机选择的技术实现,适用于测试数据构造、抽样分析等场景。
2025-06-08 14:30:55
220
原创 【设置自动换行】别手动划代码了!这 1 个设置让你开发时间省一半
如何在IEDA中设置代码自动换行 摘要:针对IDEA编辑器缩小窗口后代码不自动换行的问题,本文提供了解决方案。只需三步设置:1)打开File-Settings;2)进入Editor-General找到SoftWraps;3)在Soft-wrap these files中添加*.java文件类型,即可实现Java代码的自动换行功能,方便查看长代码行而不需频繁滚动。
2025-06-08 14:09:45
306
原创 【IO流】别再为打印流发愁!一文掌握字节与字符打印流的用法
本文介绍了Java中的打印流、解压缩流和常用工具包的使用方法。打印流部分讲解了字节打印流和字符打印流的构造方法与成员方法,并演示了格式化输出功能。解压缩流部分说明了如何通过ZipInputStream和ZipOutputStream实现文件的压缩与解压操作,强调了解压缩的本质是将ZipEntry对象按层级拷贝。最后介绍了Commons-io和Hutool工具包提供的文件操作便捷方法,如文件复制、读写等。文章内容实用,涵盖了文件处理中常见的打印、压缩和解压需求,并提供了代码示例帮助理解。
2025-06-07 20:06:40
537
原创 【职场】偷偷告诉你:职场人靠这招复盘,竟比同事早 3 年升管理层
本文对比学生思维与职业思维在遇问题、学习、价值判断等 5 大场景的差异,介绍 STAR、SCQA 模型用法,分享公司带教心得,阐述反思、总结与复盘区别,讲解情景重现法、关键点法两种复盘方法及回顾目标等四个步骤,强调复盘要秉持多种心态。
2025-06-07 16:50:53
847
1
原创 【IO流】惊!面试官狂问序列化底层原理,我靠这张图直接拿 offer!
Java IO流中的转换流与序列化流应用 摘要:本文介绍了Java IO流中的转换流和序列化流的使用方法。转换流可以实现字节流与字符流的相互转换,解决乱码问题,演示了InputStreamReader和OutputStreamReader的使用案例。序列化流通过ObjectOutputStream将对象写入文件,反序列化流通过ObjectInputStream读取对象,详细说明了Serializable接口的应用及版本号问题的解决方案。文章还提供了文件编码转换等实用案例,帮助开发者掌握IO流的高级应用技巧。
2025-06-05 11:38:49
413
原创 【IO流】面试必问!字符集乱码原理竟占大厂面试 30% 分值
还在为乱码问题秃头?本文深度解析 Java 字符集与字符流核心原理,从 ASCII 到 UTF-8 的编码逻辑,到 FileReader/FileWriter 的底层机制,全流程拆解 “乱码生成 - 修复” 全链路:字符集本质:对比 ASCII、GBK、UTF-8 存储逻辑,揭秘中文乱码根源(如编码解码不统一、字节读取不完整);字符流实战:通过空参 read () 逐字符读取、带参 read (char []) 批量读取等案例,演示如何避免乱码(如使用统一编码、字符流替代字节流);
2025-06-04 15:48:56
1897
原创 【运营】张一鸣旗下运营团队曝光:这套积分体系让用户留存率暴涨 40%!
【摘要】本文系统介绍了精细化运营体系的核心方法论,包含三大模块:1)用户画像构建,通过标签体系、RFM模型实现用户分层;2)积分运营体系,基于"获取-消耗-风控"路径设计差异化激励;3)会员成长体系,通过类型划分、权益设计和风险管控培育核心用户。文章强调数据驱动的运营策略,通过用户价值分层(如二八法则)实施精准触达,最终实现用户增长、活跃留存和商业变现的目标。整套体系适用于互联网产品长期运营场景,可结合具体业务需求模块化应用。
2025-06-03 21:35:04
1042
原创 【IO流】程序员必知:字节流读写文件时,这 5 个细节让你少踩 90% 的坑!
该文章主要介绍 Java IO 流中字节流的相关知识,内容如下:IO 流概述:IO 流用于实现程序与文件间的数据读写,程序是读写主体。字节输出流:可通过FileOutputStream创建对象,有三种写数据方式,支持换行(需根据系统使用对应换行符)和续写(通过参数开启开关),使用后需释放资源。字节输入流:用FileInputStream创建对象,文件不存在会报错,可循环读取数据,读到末尾返回 - 1。
2025-06-02 17:50:01
510
原创 【File操作】救命!文件夹大小统计总出错?递归算法竟能这么玩?
Java文件操作指南摘要 本文系统介绍了Java中File类的使用方法,涵盖文件路径、创建删除、遍历统计等核心操作。内容包括:File类构造方法的三种形式(字符串路径、父子路径拼接、File对象与字符串拼接);文件判断方法(isDirectory/isFile/exists)和获取属性方法(length/getPath等);文件创建(createNewFile)与删除(delete)操作;文件夹遍历的多种方式(listFiles/listRoots等过滤器应用)等。
2025-06-01 23:22:36
334
原创 惊!面试官问「你是怎么学习的?」,90% 的人都踩过这个坑!
面试技巧干货分享:1.自我介绍要准备1/3/5分钟版本,突出岗位匹配度;2.回答问题要有逻辑4.可主动引导话题到擅长领域;5.简历需逐句打磨,避免低级错误;6.面试后及时复盘。核心建议:多练习、保持自信、展现学习潜力。记住口号:键盘敲烂,年薪百万!
2025-05-30 17:49:18
594
原创 自定义异常小练习
摘要:本文演示了Java中自定义异常的综合练习,通过"女朋友"录入案例展示了异常处理的实际应用。代码要求用户输入姓名(3-10字符)和年龄(18-40岁),使用异常处理来验证输入合法性:姓名长度异常、年龄格式异常(非数字)和范围异常。重点解决了Scanner.nextInt()的局限性问题,采用nextLine()配合Integer.parseInt()的完整输入处理方案。案例包含了GirlFriend类的完整实现,展示了属性验证和异常抛出的规范写法。
2025-05-29 21:28:44
235
原创 技术思维 VS 运营思维,用户留存该听谁的?吵翻了!
想知道如何让用户对产品「欲罢不能」?本文为编程学习者深度拆解互联网运营核心逻辑,从用户活跃度、留存率到收入转化,全流程解析运营实战技巧:活跃度提升:通过精准推送、趣味内容和营销活动(如登录有奖),让用户「记得打开」并「玩得爽」,案例覆盖滴滴补贴、视频平台会员体系;留存率拯救:剖析刚性流失、受挫流失等 5 大原因,分享强化用户时间 / 金钱 / 情感投入的策略(如 UGC 内容沉淀、社交关系绑定),搭配拼多多「砍一刀」等实操案例;
2025-05-29 17:27:39
1137
原创 程序员转型运营必看!一套体系打通用户增长全流程
本文系统介绍了互联网运营的基础知识、工作内容和用户增长策略。主要内容包括:1.运营基础知识,涵盖产品生命周期和用户生命周期模型;2.运营主要工作,从产品研发到衰退各阶段的工作重点;3.运营岗位类型,如产品运营、活动运营等;4.用户增长策略,包括用户生命周期模型和拉新方法。特别强调了冷启动阶段的重要性,以及通过多种手段获取新用户的策略,如低价让利、异业合作等。
2025-05-28 11:42:57
1107
3
原创 马斯克团队都在用的 AI 文案技巧,全在这 2 个模板中!
本文介绍了利用AI仿写爆款文案的两种模板方法。第一种模板要求AI模仿给定文案的语言风格和结构创作主题文案,如以"重庆洪崖洞"为主题仿写西安古城墙文案;第二种模板同样强调模仿原文案风格,但主题可自由替换。文章提醒AI仿写虽效果较好,但存在洗稿抄袭风险,同领域需谨慎使用。最后鼓励读者交流学习并关注作者。全文提供了具体的AI提示词范例,帮助读者掌握爆款文案仿写技巧。
2025-05-27 14:44:40
663
原创 程序员必看!2 个爆款文案公式让技术文章阅读量暴涨
《爆款公众号文案写作指南》 本文系统解析了公众号爆款文案的两种核心写作模式。盘点型文案采用"热点引入+分类盘点+总结建议"的三段式结构,适合产品推荐类内容,通过列举分类和数字对比增强说服力。并列型文案则以"事件引入+观点阐述+多维度论证+结论强化"为主框架,擅长观点的深度剖析。两种模式均强调口语化表达、小标题分段、数据支撑和场景化结尾,通过设置互动问题、利益引导等方式提高用户参与度。
2025-05-27 11:40:56
1327
原创 你的博客写了1000篇,但迟迟无人问津?AIGC 时代不改变,注定被淘汰!
【爆款标题公式总结】如何用AI写出10万+阅读量的文章? 本文揭秘爆款文章标题的核心公式:痛点标签+情绪调动+悬念设计。通过精准定位用户痛点(利益/情感/人性),结合标签化手法(年龄/星座/职业等)增强代入感。
2025-05-26 17:46:22
1064
原创 90%程序员不知道的Java异常处理暴富法则!2025避坑代码模板免费领(附灵魂四问调试宝典)
《Java异常处理简明指南》 异常分类:运行时异常(如数组越界)和编译时异常(如日期解析错误) 异常作用:检查bug、通知调用者执行状态 处理方式: JVM默认处理:打印异常信息后终止程序 捕获处理(try-catch):让程序继续执行 抛出处理(throws/throw):通知调用者异常情况 异常处理四问:详细解析了try-catch块的执行逻辑 常用方法:getMessage()、toString()、printStackTrace() 异常处理的目标不是预防异常,而是掌握异常发生后的应对措施。
2025-05-25 15:58:33
1174
原创 Stream流两个小练习
摘要:本文展示了两段Java方法引用的练习代码。练习一演示了如何通过stream流操作将学生对象的姓名提取到数组中,使用了Student::getName方法引用。练习二介绍了将学生姓名和年龄拼接成字符串的需求,并开始文件操作示例。文章强调了方法引用的使用技巧,包括判断现有方法是否符合需求及其引用规则,最后鼓励读者交流学习。
2025-05-25 09:41:25
124
原创 学会方法引用,轻松搞定 Java 代码优化,年薪百万不是梦!
【Java方法引用简明指南】 方法引用分为5种形式: 静态方法引用:类名::静态方法(如Arrays.sort(arr, FunctionDemo1::subtraction)) 成员方法引用:对象::方法(含this/super引用,需非静态上下文) 构造方法引用:类名::new(如Student::new创建对象) 类名引用成员方法:类名::实例方法(如String::toUpperCase) 数组构造引用:数据类型[]::new
2025-05-24 11:45:24
431
原创 年薪百万面试必杀题:普通for循环和增强for循环的奥秘是什么?
本文主要介绍了Java中的增强for循环和匿名内部类的使用。增强for循环是JDK5以后引入的,底层基于迭代器,适用于单列集合和数组的遍历,语法简洁但无法直接修改集合结构或获取索引。与普通for循环相比,增强for循环更适用于顺序遍历,而普通for循环则支持索引访问和修改集合结构。文章还通过示例展示了增强for循环与普通for循环的相互转换,并指出在某些依赖索引或修改集合结构的场景下,增强for循环无法替代普通for循环。
2025-05-22 11:42:14
602
原创 定义集合时出现‘AbstractList‘ is abstract; cannot be instantiated报错
在定义集合时,如果出现“AbstractList is abstract; cannot be instantiated”的报错,通常是因为尝试直接实例化了一个抽象类AbstractList。抽象类不能被直接实例化,必须通过其具体子类来实现。正确的做法是使用ArrayList等具体实现类,例如:ArrayList<Integer> list = new ArrayList<>();。这样可以避免抽象类无法实例化的问题,确保代码能够正常编译和运行。
2025-05-22 09:37:45
249
原创 综合练习——Stream流
本文展示了三个Java编程练习,分别涉及数字过滤、字符串过滤与收集,以及自定义对象过滤与收集。练习一通过ArrayList和Stream过滤出集合中的偶数;练习二从字符串集合中过滤出年龄大于等于24岁的人,并将结果收集到Map中;练习三则从男女演员的集合中过滤出符合条件的演员,并将结果封装成Actor对象后收集到List中。这些练习展示了Java中集合操作和流式处理的基本用法,包括filter、map、collect等操作。
2025-05-22 00:46:12
253
原创 键盘敲冒烟?2025程序员突围战:这几种AI提问方式让你的文章产出效率翻3倍!
本文主要介绍了AIGC(人工智能生成内容)在新媒体运营中的应用流程和方法。首先,通过投喂数据给AI并利用ICOS模型进行提问,可以高效生成所需内容。其次,文章详细阐述了如何利用AIGC进行热点选题预测和垂直领域内容创作,包括如何找到热点、预测未来趋势以及围绕产品、品牌和用户进行选题。此外,还介绍了如何通过复制爆款选题和文案,利用AI进行扩写和模仿,以生成符合平台风格的新内容。最后,文章强调了数据反馈和迭代优化的重要性,确保生成内容的质量和效果。通过这些方法,新媒体运营者可以更高效地利用AIGC技术,提升效率
2025-05-21 11:43:45
702
5
原创 2025年Java面试潜规则:不懂Servlet原理的程序员,正在被批量淘汰!
Servlet是Java Web开发中的核心组件,用于处理客户端(如浏览器)的HTTP请求并生成动态响应。它类似于食堂的打饭阿姨,接收请求、处理数据、执行业务逻辑,并返回响应。Servlet的工作流程包括接收请求、读取参数、执行业务逻辑和生成响应。与静态内容不同,Servlet能够根据用户需求动态生成内容。Servlet的生命周期包括初始化(init())、服务(service()、doGet()/doPost())和销毁(destroy())。编写Servlet需要继承HttpServlet类,并通过注解
2025-05-20 21:49:54
1300
原创 2025程序员自救指南:代码之外的第二曲线革命[特殊字符]→[特殊字符]——当AIGC碾压性优势撞碎35岁职业壁垒
GitHub星标价值下降,传统技术如SpringBoot/Vue正被AI视频生成器替代,技术博客的流量远低于抖音AI教学视频。自媒体运营定位包括品牌宣传、产品销售、客户服务、危机公关和内容变现。账号形象定位涉及头像设计、名称设定和简介撰写,需体现个性化风格和明确方向。AI生成内容(AIGC)正成为新趋势,包括文案、图片和视频生成,相关工具如deepseek、通义千问等正在改变内容创作方式。
2025-05-20 15:44:29
897
java开发多线程知识汇总,线程,线程池,关键字,原子性,源码分析,锁机制
2025-07-13
tomcat9安装包,可以用于学习tomcat9的知识,可以用来配置其他的使用
2025-05-26
eclipse安装包,可以下载下来加压后使用
2025-05-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人