I am an Art student and i'm writing a report about java and symbian c++, so I would like to do a little research here about advantages of Symbian C++, as I known, using Symbian C++ can use more functionalities than Java, but I'd like to know some details regarding in terms of speed, stability, functionality and compatibility.

speed:
C++ sounds to be faster than Java as it is compiled to native code. What about speed for graphics? Symbian C++ seems to have some graphical accelerator functions that Java does not have, but was KVM implemented in a way that acceleration is automatic?

stability:
two well-written program, using Java and Symbian C++ respectively, which is more stable? Or, which language is more easier to write stable program?

functionality:
Java seems to have less control of the system, but more JSRs can let MIDlet have more functionalities, what about symbian C++?

compatibility:
Program written in Symbian C++ can be used only in Symbian OS, but Symbian OS also supports Java MIDlet. How difficult/easy to migrate a Java/Symbian C++ program from one handset to another?

Please help me for above questions, thanks a lot.