AnyHeavyNoEffectMethodが重い処理で、Java8以降ならラムダ式使うんじゃね?


log(() -> "" + AnyHeavyNoEffectMethod(o));


public viod log(Supplier<String> s){
if (isDebugMode())
System.out.println(s.get()); // ここでAnyHeavyNoEffectMethodが実行される
}