wx4j is a Java wrapper around the *tried and tested* wxWindows widget framework. The main idea may be similar with one which gave birth to SWT : hide native widgets behing a [more or less] thin layer of Java. By “native” I mean widgets for Windows flavours, Linux/Unix with GTK+ or Motif, and MacOS as well. However I see some interesting differences :
+++ source code is available for native wxWindows, however not available for native part of SWT ?!?
+++ wx has considerably more C++ than Java. Some layers such as event loop are native to the OS thus (afaik) faster than SWT's.
— what about wxEmbedded ? would be nice to integrate also … SWT has already made some steps in this direction
— I find somehow questionable the sanity of the “native” approach, because we'll eventually end up writing small Java control layers manipulating native GUIs and native data sources (OTL anyone ?). But then again, this might be a valid approach.
As well as in SWT, there is some ["non-Javaic"] memory management needed such as destroying transient windows containers and deleting memory used by drawing contexts … Although the library is extremely young the doc is quite useful, even showing non-obvious things like how to deploy a wx4j app with webstart.