This depends on your timing. If you are basing work on PersonalJava 1.0, then you should probably use this route in the short term. PersonalJava includes the PersonalAWT, and offers graphics and windowing subsystems and supports java.applet . Therefore, PersonalJava supports the downloading and execution of applets from the Web, where EmbeddedJava does not. Note that both Personal and EmbeddedJava are designed to be modular and flexible.
Developers are free to add their own apps, libraries, tools, etc.
My question relates to all areas of Java, but is certainly important, maybe even critical for PersonalJava. JoeSam, I'm sorry I don't fully understand this question. I've seen comments that lead me to believe that different VMs act somewhat differently in timing, object construction, and so on. As such, it has numerous features that make it an ideal language for embedded development. First, it's object-oriented, promoting code reuse and the creation of multipurpose objects, which contributes to reducing overall code size.