
Java Swing comes with "pluggable look-and-feel technology", which essentially boils down to the fact that interfaces can be "skinned" (although this is simplifying a tad) and is therefore, extremely flexible. By default, Java ships with a cross-platform look-and-feel (LAF), which means your apps can look consistent across all platforms, or LAFs that mimic the look of a specific platform, say Windows, for example. However, one of the chief complaints of Java desktop applications is its "look". It basically stems from two issues:
I feel that the way the guy just puts Mac OS X aside is a bit unfair. Especially when he brings up some semi-crappy LAF and says "it should be good for any platform." Yeah right. No offense, but such a GUI will not fit at all with standard Mac OS X apps, so no it is not good for any platform. And just as wih Windows, Java Swing apps on the Mac do have some inconsistencies with their native counterparts. Just from the GUI I can tell that it's a Java app, because the way the widget work and look is generally less polished, etc than default Carbon or Cocoa widgets. If he hasn't really used Swing apps on Mac OS X, then he shouldn't comment on it and just admit that he has no experience there, not just say "it's good enough there, not an issue".