What are Java and Android

Java

Java was originally the only official programming language for creating native Android apps. Java is not only used for programming Android apps, but was a popular programming language for the development of desktop and server applications years before the introduction of Android (and it is to this day).[1]

The language was originally created by the company Sun Microsystems developed under the direction of James Goslin, which released version 1.0 of the Java Development Kit (JDK) in January 1996. Java was originally intended for use on embedded systems such as set-top boxes.[2]Sun was founded in 2010 by the company Oracle Corporation bought up, thereby also in the possession of Java came.[3] After this takeover, a legal battle arose between Google and Oracle over the use of Java in Android.

Technical details [edit | edit source]

A compiler converts the Java source code into Bytecode for the Java Virtual Machine (JVM) translated. This JVM can be thought of as a simulated CPU that executes the Java bytecode as machine code. This means that the Java bytecode can be executed on any operating system (e.g. Windows variants, Linux and MacOS) and any CPU platform for which an implementation of the JVM is available (platform independence).[4] For Android apps, however, this bytecode is translated into special bytecode for the Dalvik Virtual Machine (DVM), which is optimized for the execution of the CPUs typically used for Android devices. The Dalvid bytecode is contained in the apk file (installation file) in the form of the file. With the Android4.4! 4.4 "KitKat" The available runtime environment Android Runtime (ART) translates the Dalvik bytecode once into device-specific machine code.

Java is to be assigned to the language paradigm of object-oriented programming.[1] Objects are addressed via references and not via pointers.

Java also has automatic garbage collection, so that dynamically allocated memory does not have to be explicitly released by the programmer when objects are created.[5]

Related programming languages ​​[edit | edit source]

Programs written using the Kotlin programming language can also be executed in the JVM. In addition, from version 3.0 of Android Studio (official development environment for Android apps) in addition to Java also with Kotlin native Android apps are developed.

Next Kotlin there are other programming languages ​​whose programs can be compiled in bytecode for execution with the JVM, e.g. Groovy, Scala, Clojure or Ceylon.[6][7]

The script language JavaScript developed by Netscape is technologically independent of, despite the fact that it has "Java" in its name Java. The first versions of this language were under the name LiveScript released.[8]

Trivia [edit | edit source]

The programming language is after the main Indonesian island Java named, which is also the name for the by the Sun Microsystems preferred coffee variety was the developer involved.[9][1] The logo of Java is therefore a steaming coffee mug. Originally the language should Oak (English: oak), but this had to be discarded for copyright reasons.[3]

Web links [edit | edit source]

Individual evidence [edit | edit source]

  1. 1,01,11,2Volker Zota (2017-05-23). "Numbers, please! Java, the main thing is 0xCAFEBABE!". heise.de. Retrieved on 2017-05-23.  
  2. Michael Wiedeking (2017-09-29). "Runs everywhere: The Java Virtual Machine at a glance". hot. Retrieved on 2017-09-30. 
  3. 3,03,1Christian Ullenboom. "Chapter> 1.1 Historical background Java is also an island. The comprehensive manual <". rheinwerk-verlag.de="" (openbook).="" retrieved="" on=""> 
  4. Margaret Rouse. "Java virtual machine (JVM)" (in English). theserverside.com. Retrieved on 2017-05-20. 
  5. Eva Andreasson (2012-10-10). "JVM performance optimization, Part 3: Garbage collection" (in English). javaworld.com. Retrieved on 2017-05-20. 
  6. Simon Olofsson (2014-08-01). "A second look at JVM programming languages". heise developer. heise.de. Retrieved on 2016-04-16. 
  7. Moritz Förster (2017-10-09). "Introduced: Six Languages ​​for the Java Virtual Machine". heise.de. Retrieved on 2017-10-09. 
  8. Joe Burns. "Java vs. JavaScript: Similarities and Differences". htmlgoodies.com. Retrieved on 2017-05-19. 
  9. Dominic Lammert (2016-05-23). "The triumphant advance of the Java programming language: From the coffee machine to the space mission". dice.com. Retrieved on 2017-05-20.