Well, partially. As long as you’re using Mac OS X.
Java has always suffered in the GUI department. Swing has a reputation for being slow, although it should really have a reputation for being difficult to use well. Plus it’s always suffered from looking almost like the host platform but not quite. I won’t even mention the Metal look and feel.
Apple, however, have done quite well. With a bit of work you can get a Swing application looking almost like a Mac application. It’s not all straightforward – keeping a menu on screen without an open window involves having an off-screen window hanging around, and some platform specific logic is needed to build menus but the end result looks great and it’s still less effort to port than your standard Win32 or Cocoa application.
I still don’t quite see the point of Cocoa-Java however – you may as well just use Objective C. And the best thing about Java is not the language but the development environment.







