使用 Chromium 代码库时,我已经习惯了CHECK(condition);
,DCHECK(contidtion)
和NOTREACHED;
. 它们向代码引入断言(通常是先决条件),并允许在日志中使用一些信息终止程序,在调试构建中DCHECK
,并且NOTREACHED
还会停止调试器来调查案例。第一个仅在发布模式下处于活动状态,后两个仅在调试中处于活动状态 - 当“不活动”时,它们将被空宏替换并且不会造成任何开销。
Java中是否有一些库允许这样的事情?我知道我可以根据配置交换配置创建一些静态方法/对象,但我看不到避免产生开销的方法。此外,我不想重新发明轮子。