Java does a pretty good job at making applications look the same on Windows and Linux. But the default fonts that Java uses on Linux are not the same fonts used for Windows. This causes a problem for implementing GUI projects on Linux that will be used on Windows. The default font used on Linux can have different dimensions than the fonts used on Windows causing differences in the flow of text and messing up components in windows. Here is an example: