我找原因了: **为了编译器在编译期间进行断言** ,GO编译期间会进行死码消除,这种代码不会对正式环境造成影响,但是可以在编译期间检查出我们要实现某些接口时候,如果没有实现的问题。因为GO的interface实现不是强制性检测; 具体可以看:[interface-合理性验证](https://link.segmentfault.com/?enc=7JRBmyCWtAu%2Fm01jyUGwMw%3D%3D.EEpuhw0oj0Sab9t4WlwZSVokiRbR8eIzLWYghj%2BHrsJco3r27r76Q1dYZF9%2BTNV%2FmUqIQP7hHmyghyEkLxNZ%2FU53eFzZJWFsVmFeItAiBRPt8cxaldMV8v5uwCsDZoub3aZlkToegjGIRpETcQbs1g%3D%3D)