You're mixing up your APIs with your ABIs. (Not too surprising--a lot of
people say API when they're referring to ABIs.) An API appears purely at the
source level. Behind the scenes, it may resolve to a simple ABI, or more than
one, or none (though the latter two cases are rare). In C or C++, the API may
use macros or inline functions, which may not involve any ABIs at all. And with
cross-platform APIs, the APIs may refer to very different ABIs on different
platforms, like the WXWidgets API, which
is in large part just a wrapper around native APIs (GTK, Windows, or
MacOS).
Dalvik doesn't use the JVM's ABIs at all! It can't, because
it's a different virtual machine that works differently. Android, on the other
hand, uses a large amount of the same APIs as J2SE. It's compatible at the
source level, because APIs are a source-level feature.
--- Do not
meddle in the affairs of Wizards, for it makes them soggy and hard to light. [ Reply to This | Parent | # ]
|