Play Video
1
Android 1.5 speed comparing C++, C# (mono) and Java (using Roozz plugin)
Android 1.5 speed comparing C++, C# (mono) and Java (using Roozz plugin)
::2009/09/02::
Play Video
2
Should an Android dev learn anything other than Java?
Should an Android dev learn anything other than Java?
::2013/09/27::
Play Video
3
Android Graphics Programming Tutorial using Java and Android SDK |Graphics Programming
Android Graphics Programming Tutorial using Java and Android SDK |Graphics Programming
::2012/10/14::
Play Video
4
01 - Downloading Eclipse Java and the android sdk
01 - Downloading Eclipse Java and the android sdk
::2013/08/18::
Play Video
5
AndroidStudio- Visual Studio Addin For Android Application Development|Android Java SDK  Tools
AndroidStudio- Visual Studio Addin For Android Application Development|Android Java SDK Tools
::2012/09/30::
Play Video
6
AnDevCon: Android for Java Developers - Marko Gargenta, Pt. 1
AnDevCon: Android for Java Developers - Marko Gargenta, Pt. 1
::2011/03/09::
Play Video
7
Android Application Development Tutorial - 1 - Download and Install the Java JDK
Android Application Development Tutorial - 1 - Download and Install the Java JDK
::2011/08/17::
Play Video
8
AnDevCon Android for Java Developers - Marko Gargenta, Pt. 2
AnDevCon Android for Java Developers - Marko Gargenta, Pt. 2
::2013/07/27::
Play Video
9
HOWTO  Setup the Java JDK, Eclipse, Android SDK and Android ADT for Android Development Windows 7
HOWTO Setup the Java JDK, Eclipse, Android SDK and Android ADT for Android Development Windows 7
::2013/11/25::
Play Video
10
Sikuli Java API Android Virtual Device Interaction
Sikuli Java API Android Virtual Device Interaction
::2013/02/17::
Play Video
11
Android Pure Java Programming 2
Android Pure Java Programming 2
::2014/02/22::
Play Video
12
Java for Android Development (Level: Beginning) 12/8/12
Java for Android Development (Level: Beginning) 12/8/12
::2012/12/09::
Play Video
13
AnDevCon: Android for Java Developers - Marko Gargenta, Pt. 4
AnDevCon: Android for Java Developers - Marko Gargenta, Pt. 4
::2011/03/09::
Play Video
14
Android Development Using Java - Setup - 4th Step of 4
Android Development Using Java - Setup - 4th Step of 4
::2011/12/21::
Play Video
15
Android Eclipse Tutorial #1 - Building an App From Scratch
Android Eclipse Tutorial #1 - Building an App From Scratch
::2013/08/19::
Play Video
16
Ubuntu for Phones vs Android Jelly Bean Comparison
Ubuntu for Phones vs Android Jelly Bean Comparison
::2013/02/23::
Play Video
17
How to install the Android SDK and run ADB Shell
How to install the Android SDK and run ADB Shell
::2012/05/08::
Play Video
18
AnDevCon: Android for Java Developers - Marko Gargenta, Pt. 3
AnDevCon: Android for Java Developers - Marko Gargenta, Pt. 3
::2011/03/09::
Play Video
19
Difference Between Java and Javascript
Difference Between Java and Javascript
::2013/11/27::
Play Video
20
Java Android Development - Swapping Screens and Activities
Java Android Development - Swapping Screens and Activities
::2012/10/20::
Play Video
21
csMOB :: Lecture 3 - Introduction to Object Oriented Programming, Java Primer, Android development
csMOB :: Lecture 3 - Introduction to Object Oriented Programming, Java Primer, Android development
::2013/08/16::
Play Video
22
Android Application Development Tutorial 29 Set Gravity within Java
Android Application Development Tutorial 29 Set Gravity within Java
::2014/02/10::
Play Video
23
Performance Comparison; Java, Python and Go on App Engine
Performance Comparison; Java, Python and Go on App Engine
::2013/06/01::
Play Video
24
Java , OOP, Android Lecture 15 (Dictionary, SQLite, SharedPreferences)(In Bengali)(বাংলা)
Java , OOP, Android Lecture 15 (Dictionary, SQLite, SharedPreferences)(In Bengali)(বাংলা)
::2014/01/21::
Play Video
25
Replica Sansung Galaxy S3 dual chip Perfeito ( plataforma Java ) Não tem android
Replica Sansung Galaxy S3 dual chip Perfeito ( plataforma Java ) Não tem android
::2012/12/18::
Play Video
26
jbed java emulator for android 2.3.4 + precaution + file links in Spice MI350n dual sim
jbed java emulator for android 2.3.4 + precaution + file links in Spice MI350n dual sim
::2012/06/03::
Play Video
27
How to develop  a Client - Server- networking Application for Android| Android development tutorials
How to develop a Client - Server- networking Application for Android| Android development tutorials
::2012/11/21::
Play Video
28
How to record user voice in android app
How to record user voice in android app
::2013/09/16::
Play Video
29
Java Game Development (LibGDX) | Episode 1 - General information and setting up our project
Java Game Development (LibGDX) | Episode 1 - General information and setting up our project
::2013/04/21::
Play Video
30
Java: Dalvik-VM vs. Android Runtime (ART) [DEUTSCH]
Java: Dalvik-VM vs. Android Runtime (ART) [DEUTSCH]
::2014/02/01::
Play Video
31
Android Application Development Tutorial 30 Setting Color of a TextView in Java
Android Application Development Tutorial 30 Setting Color of a TextView in Java
::2014/02/10::
Play Video
32
Client Server Application Development Tool for C# .NET, Java, Mono, Android : Thick Client
Client Server Application Development Tool for C# .NET, Java, Mono, Android : Thick Client
::2013/12/06::
Play Video
33
Comparison of  the three Cursors of Java (Collection Framework)
Comparison of the three Cursors of Java (Collection Framework)
::2014/03/08::
Play Video
34
Big Comparison Of 10 Of The Most Popular Media Players
Big Comparison Of 10 Of The Most Popular Media Players
::2013/04/21::
Play Video
35
Android Application Development Tutorial - 198 - Adding Admob Ads via Java
Android Application Development Tutorial - 198 - Adding Admob Ads via Java
::2011/08/21::
Play Video
36
Developer Salary News... Good News!
Developer Salary News... Good News!
::2013/07/21::
Play Video
37
2014 Android Application Development Tutorial #85 Setting up the TabHost in Java
2014 Android Application Development Tutorial #85 Setting up the TabHost in Java
::2014/02/20::
Play Video
38
Fruit Ninja Java version vs android version
Fruit Ninja Java version vs android version
::2012/10/09::
Play Video
39
Chrome & Java on Android-overview of AlwaysOnPC (on Galaxy Tab)
Chrome & Java on Android-overview of AlwaysOnPC (on Galaxy Tab)
::2011/03/18::
Play Video
40
Java , OOP, Android Lecture 5(In Bengali)(বাংলা)
Java , OOP, Android Lecture 5(In Bengali)(বাংলা)
::2013/11/03::
Play Video
41
Android Development Series (Session 2)_ Developing Java, Flex and Native Application in Android
Android Development Series (Session 2)_ Developing Java, Flex and Native Application in Android
::2012/02/23::
Play Video
42
IST297D - Why comparing primitive data and object data is different in Java
IST297D - Why comparing primitive data and object data is different in Java
::2013/09/14::
Play Video
43
what is the difference between c++ and java
what is the difference between c++ and java
::2012/06/26::
Play Video
44
MDF3 Week4: Java Android WebView
MDF3 Week4: Java Android WebView
::2013/06/27::
Play Video
45
Meet the Two Giants Face to Face (Java & C# Comparison)
Meet the Two Giants Face to Face (Java & C# Comparison)
::2012/05/20::
Play Video
46
Java Configuration Tutorial for Using the Record/Compare Feature in the Real English
Java Configuration Tutorial for Using the Record/Compare Feature in the Real English
::2014/02/18::
Play Video
47
Aritm Mental Calculation Trainer App for Mobile Phones Java ME & Android also Blockis
Aritm Mental Calculation Trainer App for Mobile Phones Java ME & Android also Blockis
::2014/03/18::
Play Video
48
Android Application Development Tutorial - 28 - Comparing Strings with else if
Android Application Development Tutorial - 28 - Comparing Strings with else if
::2011/08/19::
Play Video
49
Difference between "== operator" and "equals() method"  in java?
Difference between "== operator" and "equals() method" in java?
::2013/12/30::
Play Video
50
Simple 3D model loader developed in Java/C++ for Android Devices
Simple 3D model loader developed in Java/C++ for Android Devices
::2012/12/04::
NEXT >>
RESULTS [51 .. 101]
From Wikipedia, the free encyclopedia
Jump to: navigation, search

This article compares the Java and Android API and virtual machines.

While most Android applications are written in Java, there are many differences between the Java API and the Android API, and Android does not use a Java Virtual Machine but another one called Dalvik.

Android's Process Virtual machine[edit]

There is no Java Virtual Machine in the Android platform. Java bytecode is not executed. Instead Java classes are compiled into a proprietary bytecode format and run on Dalvik, a specialized virtual machine (VM) designed specifically for Android. Unlike Java VMs, which are stack machines, the Dalvik VM is a register-based architecture.

Dalvik has some specific characteristics that differentiate it from other standard VMs:[1]

  • The VM was designed to use less space.
  • The constant pool has been modified to use only 32-bit indexes to simplify the interpreter.
  • Standard Java bytecode executes 8-bit stack instructions. Local variables must be copied to or from the operand stack by separate instructions. Dalvik instead uses its own 16-bit instruction set that works directly on local variables. The local variable is commonly picked by a 4-bit 'virtual register' field.

Because the bytecode loaded by the Dalvik virtual machine is not Java bytecode, and of the specific way Dalvik load classes, it is not possible to load Java libraries packages as jar files, and even a specific logic must be used to load Android libraries (specifically the content of the underlying dex file must be copied in the application private internal storage area, before being able to be loaded).[2]

System properties[edit]

As it is the case for the Java SE class System, the Android System class allows the retrieval of system properties. However, some mandatory properties defined with the Java Virtual Machine have no meaning or a different meaning on Android. For example:

  • "java.version" property returns 0 because it is not used on Android,
  • "java.specification.version" invariably returns 0.9 independently of the version of Android used,
  • "java.class.version" invariably returns 50 independently of the version of Android used,
  • "user.dir" has a different meaning on Android,
  • "user.home" and "user.name" properties do not exist on Android

Class library[edit]

Dalvik does not align to Java SE nor Java ME class library profiles[3][4] (e.g., Java ME classes, AWT or Swing are not supported). Instead it uses its own library[5] built on a subset of the Apache Harmony Java implementation.

java.lang package[edit]

By default, the default output stream System.out and System.err do not output anything,[6] and developers are encouraged to use the Log class, which logs Strings on the LogCat tool.[7] (this has changed at least from HoneyComb, and they now output to the log console as well)

Graphics and Widget library[edit]

Android does not use the Abstract Window Toolkit nor the Swing library. User Interface is built using View objects. Android uses a framework similar to Swing based around Views rather than JComponents. However, Android widgets are not JavaBeans: the Android application Context must be provided to the widget at creation.

Look and feel[edit]

Android widget library does not support a Pluggable look and feel architecture; The Look and Feel of Android widgets must be embedded in the widgets themselves. There is, however, a limited capability to set styles and themes for an application.[8]

Layout manager[edit]

Contrary to Java where Layout managers can be applied to any container widget, Android layout behavior is encoded in the containers.[9]

See also[edit]

References[edit]

  1. ^ Rose, John (2008-05-31). "with Android and Dalvik at Google I/O". Retrieved 2008-06-08. 
  2. ^ Fred Chung (2011-07-28). "Custom Class Loading in Dalvik". Google. Retrieved 2011-11-27. 
  3. ^ "Google's Android SDK Bypasses Java ME in Favor of Java Lite and Apache Harmony". infoq.com. 2007-11-12. Retrieved 2009-05-31. "Instead of providing a full version of the Java SE or Java ME Google has diverged on two fronts. First, a limited subset of the core Java packages is provided. (...) By going this route Android is following in the footsteps of another Google project GWT which uses Java as its development language but does not support the full JDK" 
  4. ^ "Alternative to Point2D". Droid Tutorials. 2010-02-12. Retrieved 2010-02-17. "Given that AWT is not supported in Android API, the Point2D class, which is useful for writing 2D graphics, is missing either" 
  5. ^ "Package Index". Google. Retrieved 2011-11-27. 
  6. ^ "Android Debug Bridge". Google. Retrieved 2009-05-31. "By default, the Android system sends stdout and stderr (System.out and System.err) output to /dev/null." 
  7. ^ "Reading and Writing Logs". Google. Retrieved 2011-11-27. 
  8. ^ "Applying Styles and Themes". Google. Retrieved 2011-09-03. 
  9. ^ "Common Layout Objects". Google. Retrieved 2011-09-03. 
Wikipedia content is licensed under the GFDL License
Powered by YouTube
LEGAL
  • Mashpedia © 2014