m.11方法⏱ 约 8 分钟
在不熟的语言里改代码:最小改动 + 三道自证
你不懂这门语言,但这门语言的工具链懂
🔎 最后验证 2026-08📚 来源:本机 Temurin JDK 17.0.14 实测🧰 Claude Code、Git
为什么学这个
上一节你拿到了地图。现在真要动手了,问题来了:AI 改完,你怎么知道它改对了? 你不懂这门语言,读代码看不出门道,而"看起来挺合理"恰恰是最贵的错觉。这一节给你三道自证——每一道都不需要你读懂代码。
💡 打个比方
你听不懂一门外语,但你能验证一封用它写的信有没有寄到:看回执。验收不一定要理解内容,只要找到一个不会撒谎的见证人。 在代码里,这个见证人就是这门语言自带的工具链。
先立一条规矩:一次只改一处
m.9 讲过调试四步法,第一步是复现。改陌生代码同理,顺序不能乱:
- 先让这个项目在你机器上编译通过 / 跑起来——这是基准线,没有基准线就没有"改坏了"这个概念
- 一次只改一处,改完立刻走下面三道自证
- 三道都过,再改下一处
一次改五个地方、最后一起验,这是陌生代码库里最常见的自杀方式:出了问题你连是哪一处引起的都定位不了,而你又没有能力靠读代码去分辨。
第一道:编译器(免费、最快、最不留情)
这是三道里唯一零成本的一道:改完就跑一次编译。
来看一个真实的例子。有个购物车类,AI 顺手把 total() 改名成了更"规范"的 getTotal()——这类"顺手优化"它很爱做(p.3 讲过它会改你没让它改的地方)。它改了定义,但漏改了调用的地方:
src/com/shop/CartCheck:: error: cannot find symbol
(c.() == , );
^
: method ()
location: variable c of type Cart
src/com/shop/Cart.java:: error: cannot find symbol
return () * ( - percentOff) / ;
^
: method ()
location: class Cart

都看到这了,打个赏呗!
接下来 · p.1
陷阱 #1:AI 编造不存在的 API/函数/库
继续读下一节 →