一键导入
java
Write robust Java avoiding null traps, equality bugs, and concurrency pitfalls.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Write robust Java avoiding null traps, equality bugs, and concurrency pitfalls.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Always use when user asks to create, generate, draw, or design a diagram, flowchart, architecture diagram, ER diagram, sequence diagram, class diagram, network diagram, mockup, wireframe, or UI sketch, or mentions draw.io, drawio, drawoi, .drawio files, or diagram export to PNG/SVG/PDF.
Expert software functional analyst specializing in functional requirements analysis, use case modeling, data flow design, and database analysis. Use when analyzing business requirements, creating use cases, designing data flows, modeling databases, or translating business needs into technical specifications.
Generate Bruno API test collections from project API definitions. Use when creating API tests, exporting collections, or testing REST endpoints.
This skill should be used when the user asks to "write java code", "java best practices", "jdk features", "java records", "java streams", "java optional", "java testing", "java spring", "java patterns", or needs guidance on professional Java development.
Build, test and package Java Maven projects. Use for compiling, running tests, or packaging the application.
Use when writing tests, creating test strategies, or building automation frameworks. Invoke for unit tests, integration tests, E2E, coverage analysis, performance testing, security testing.
基于 SOC 职业分类
| name | Java |
| slug | java |
| version | 1.0.1 |
| description | Write robust Java avoiding null traps, equality bugs, and concurrency pitfalls. |
| metadata | {"clawdbot":{"emoji":"☕","requires":{"bins":["java","javac"]},"os":["linux","darwin","win32"]}} |
| Topic | File |
|---|---|
| Nulls, Optional, autoboxing | nulls.md |
| Collections and iteration traps | collections.md |
| Generics and type erasure | generics.md |
| Concurrency and synchronization | concurrency.md |
| Classes, inheritance, memory | classes.md |
| Streams and CompletableFuture | streams.md |
| Testing (JUnit, Mockito) | testing.md |
| JVM, GC, modules | jvm.md |
== compares references, not content — always use .equals() for stringsequals() must also override hashCode() — HashMap/HashSet break otherwiseOptional.get() throws if empty — use orElse(), orElseGet(), or ifPresent()ConcurrentModificationException — use Iterator.remove()new T() or instanceof List<String>volatile ensures visibility, not atomicity — count++ still needs synchronizationInteger i = null; int x = i; crashesInteger == Integer uses reference for values outside -128 to 127 — use .equals()AutoCloseable, Java 7+thenApply vs thenCompose — compose for chaining CompletableFuturesserialVersionUID mismatch breaks deserialization — always declare explicitly