title: Does calling Java's JVM instance-altering functions have any affects in an Android application?
body: <p>For example, in <a href="https://docs.oracle.com/en/java/javase/18/docs/api/java.base/java/util/Locale.html" rel="nofollow noreferrer">Java's Locale class documentation</a> it says that Locale.setDefault()</p>
  <blockquote>
  <p>Sets the default locale for this instance of the Java Virtual Machine.
  This does not affect the host locale.</p>
  </blockquote>
  <p>Since Android OS (aka the host) doesn't use JVM, and instead uses ART to compile Android apps into Dalvik bytecode, it's safe to  assume that each Android process is an ART (or DVM?) instance and NOT a JVM instance. Meaning that executing Locale.setDefault() shouldn't have an effect inside an Android app, or at least I assumed.</p>
  <p>Am I missing something with how Android works in relation to JVM (or lack thereof)? Does calling Java SDK methods that affect JVM instances such as Locale.setDefault(locale) have any affect on ART instances as well?</p>