JAVA
文章平均质量分 94
专注于JAVA技术的分享
沉淀の沙
谋事在人,成事在天
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Spark】持久化和血缘(小白、工程师、面试)
摘要:本文深入探讨了Spark RDD缓存机制与执行原理。通过代码示例演示了cache/persist方法的使用,说明这些操作仅在遇到action算子时才会真正缓存数据。重点分析了三个核心问题:1) Spark的惰性求值特性导致代码执行顺序与预期不同;2) flatMap和map算子的执行次数由数据分区和转换逻辑决定;3) 输出交替现象源于分区并行处理。文章还提供了生产级调试技巧,包括数据倾斜定位方法和缓存策略选择建议,最后针对面试常见问题给出了深度解答,如RDD三大特性和数据倾斜解决方案。原创 2025-08-06 12:00:00 · 984 阅读 · 0 评论 -
【Java函数式编程】补充终结算子和问题解决
本文摘要: 文章对比了Spark算子与Java函数式编程的特点,详细解析了collect、anyMatch、allMatch、noneMatch、findFirst、reduce、ifPresent等终结算子的作用及实际应用场景。特别介绍了作者工厂类和作者类的实现,并解答了8个技术问题,包括RDD分区对齐、Arrays工具类设计、文件换行处理、集合框架、类名冲突、DAG迭代计算、Lambda嵌套和findAny行为等。文中通过代码示例展示了生产环境中的典型应用,如电商订单分析、风控系统检查等,强调了两者在数原创 2025-08-02 17:28:15 · 1734 阅读 · 0 评论 -
【Java函数式编程】Lambda表达式,A算子,T算子
本文介绍了函数式编程(FP)的核心概念和应用,重点讲解了Lambda表达式和各种流操作。主要内容包括:1) FP的四大优势:大数据处理高效、并行安全、代码可读性强、避免嵌套;2) Lambda表达式的结构和使用规则;3) 多种集合类型创建流的方法;4) 转换算子(map, distinct, sorted)和终端算子(forEach, count, min/max)的用法;5) 通过Author类实例演示flatMap的一对多转换。文章以代码示例为主,帮助开发者快速掌握函数式编程的核心技能。原创 2025-08-01 17:58:27 · 2001 阅读 · 0 评论 -
【Java】Java类初始化的顺序与机制
于是乎当本人在仔细看时,发现了这里面子类重写了父类的方法,那么根据动态绑定机制,此时的运行类型时子类类型那么会找到子类中和父类相同名字的方法进行调用;在同一个类中,静态代码块和静态属性的初始化顺序是按照代码先后顺序执行的,并且是在创建对象的时候最先进行的,然后是普通代码块和普通成员,这两者的执行顺序机制和静态成员一样,最后是构造器的初始化。系统并不会固执的找到所有的静态成员排到普通成员前进行初始化,而是锁定在一定范围内进行的,这和后面的结论有所出入。假设先进行静态成员初始化,再进行普通成员初始化。原创 2025-03-12 19:52:56 · 640 阅读 · 0 评论
分享