我很好奇这个问题,并做了小测试。
我不确定我所观察到的事情是否正确,但我确实测试了很多次并得到了相同的结果。
结论:
我观察到,当您调试代码和弹出屏幕上出现的变量(如果仍在使用中)时,我的意思是该变量的存在对于编译器来说很重要,而不是显示黑色文本。但是,在编译器不再需要该变量的值之后,它将显示蓝色文本。
举个例子:

在上面的图像变量中,fileName第二行使用了字符串变量(它不可见,因为弹出屏幕与它重叠,您可以在下一个图像中看到它),因此这里的文本现在是黑色的。但请看下一张图片

在这里您可以看到变量fileName不再使用,调试指针位于方法的末尾。所以文本现在变成蓝色。
即使在控制台窗口中,文本也会根据变量的存在而变化。
参考第一个图像控制台屏幕:

参考第二个图像控制台屏幕:
