MENTAL MODEL / 心智模型
先建立正确的程序直觉
对象在垃圾回收堆中存活,但文件、连接和锁仍需确定性关闭;checked/unchecked 异常都需要清晰的边界策略。
Mathematics · Computational Science · Engineering · Personal Knowledge Systems
切换会载入对应网站形态,并更换导航、首页结构、内容密度、页面网格与阅读路径;当前路径及其他查询参数会保留。
预览卡展示真实构图语言;切换后会同步改变布局密度、卡片几何、按钮、边框、HUD、背景纹样与动效节奏。
0% 会停止装饰动画并隐藏粒子;系统开启“减少动态效果”时始终优先静态显示。
0% 会移除上层面板遮罩,100% 为完全不透明;文字和控件始终保持清晰。
系统已启用减少透明效果:背景模糊会关闭,但仍采用你设置的面板不透明度。
LANG-06 · PROGRAMMING WORKBENCH
用强类型、成熟 JVM 工具链和清晰分层构建长期服务。
围绕记录类、集合、异常、Maven/Gradle、JUnit 和 JVM 调试建立现代 Java 工程路径。
MENTAL MODEL / 心智模型
对象在垃圾回收堆中存活,但文件、连接和锁仍需确定性关闭;checked/unchecked 异常都需要清晰的边界策略。
CODE REPOSITORY / 代码仓库锚点
java-project/
├─ pom.xml
├─ src/main/java/app/Main.java
├─ src/main/java/app/domain/Task.java
├─ src/test/java/app/TaskTest.java
└─ README.mdQUICK START / 第一条命令
mvn test && mvn package && java -jar target/app.jarLEARNING ROUTE / 学习路径
每个节点都包含可复制示例、判断原则与常见陷阱。
用不可变值对象和集合操作表达领域数据。
public record Task(String id, String title, Status status) {
public Task {
Objects.requireNonNull(id);
Objects.requireNonNull(title);
}
}compact constructor 维护不变量;record 不自动让引用字段深度不可变。
var total = tasks.stream()
.filter(Task::active)
.mapToLong(Task::estimateMinutes)
.sum();短数据流适合声明式变换;复杂副作用流程使用普通循环更清晰。
领域逻辑不依赖 Web/数据库框架,入口层负责适配外部世界。
<groupId>com.sunkais</groupId>
<artifactId>memory-tools</artifactId>
<version>0.1.0-SNAPSHOT</version>
<properties><maven.compiler.release>21</maven.compiler.release></properties>使用 release 同时约束语言和目标 JDK API。
app.domain // 领域模型与规则
app.application // 用例编排
app.adapter // HTTP、数据库与文件适配依赖方向由外向内;避免按 controller/service/repository 形成跨领域大包。
使用 Wrapper 固定构建工具版本,CI 从测试到打包完整复现。
./mvnw test
./mvnw verify
java -jar target/app.jarWindows 使用 mvnw.cmd;verify 会执行绑定在完整生命周期中的检查。
javac -d out src/main/java/app/Main.java
java -cp out app.Main适合理解编译/类路径;正式项目使用 Maven/Gradle。
控制传递依赖、范围与插件版本,减少 classpath 冲突。
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.11.4</version>
<scope>test</scope>
</dependency>版本仅作结构示例,实际使用应由项目 BOM/当前官方版本统一管理。
./mvnw dependency:tree出现 NoSuchMethodError 时优先检查同一库多版本与依赖调解结果。
单元测试验证规则,集成测试验证数据库/网络边界。
@Test
void rejectsBlankTitle() {
assertThrows(IllegalArgumentException.class, () -> new Task("t1", " ", TODO));
}断言领域行为和异常类型,不依赖私有方法。
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:5005 -jar target/app.jar仅在可信本地/隔离环境监听,切勿向公网暴露调试端口。
区分编译错误、类加载错误、业务异常和 GC/线程症状。
运行 dependency:tree → 检查编译与运行 classpath → 对齐框架 BOM → 清理旧产物并重建。它通常是二进制版本冲突,不是源代码中真的没有该方法。
采集 thread dump → 查找 BLOCKED 与锁拥有者 → 确认外部调用是否发生在锁内 → 固定锁顺序。不要仅通过增加线程数掩盖死锁或阻塞 I/O。
验证外部 DTO,在领域边界转换,限制解析深度和资源使用。
try (var input = Files.newBufferedReader(path, UTF_8)) {
return parse(input);
}try-with-resources 适用于 AutoCloseable;GC 不保证及时释放文件/连接。
参数化 SQL;禁用不可信原生 Java 反序列化;秘密外置;限制上传/请求体;修补 JDK 和依赖;错误响应不回显堆栈。框架自动绑定的对象仍需字段、权限与业务规则校验。
尝试更短的关键词,或者清空分类后重新搜索。
PRIVATE CODE VAULT / 私人代码仓库
把 Java 的练习、工程片段、算法伪代码、验证说明与历史版本保存在登录后的私人空间。
游客只看到这个说明,不会收到、缓存或渲染任何私人源码。
REFERENCE SOURCES / 官方与高质量资料
先在本站找回路径,再进入原始文档确认版本、平台和完整前置条件。
DELIVERY LOOP / 练习闭环