0 Bewertungen0% fanden dieses Dokument nützlich (0 Abstimmungen)
18 Ansichten2 Seiten
Bytecode is an intermediate representation of the Java language code. Bytecode instructions are analogous to machine code, but they are intended to be e%ecuted by a virtual machine. The overhead of interpretation means that interpreted programs almost always run more slowly than programs compiled to machine code would.
Bytecode is an intermediate representation of the Java language code. Bytecode instructions are analogous to machine code, but they are intended to be e%ecuted by a virtual machine. The overhead of interpretation means that interpreted programs almost always run more slowly than programs compiled to machine code would.
Bytecode is an intermediate representation of the Java language code. Bytecode instructions are analogous to machine code, but they are intended to be e%ecuted by a virtual machine. The overhead of interpretation means that interpreted programs almost always run more slowly than programs compiled to machine code would.
Main articles: Java (software platform) and Java virtual machine
One design goal of Java is portability, which means that programs written for the Java platform must run similarly on any combination of hardware and operating system with adeuate runtime support! "his is achieved by compiling the Java language code to an intermediate representation called Java bytecode, instead of directly to architecture#speci$c machine code! Java bytecode instructions are analogous to machine code, but they are intended to be e%ecuted by a virtual machine (&M) written speci$cally for the host hardware! 'nd#users commonly use a Java (untime 'nvironment (J(') installed on their own machine for standalone Java applications, or in a web browser for Java applets! )tandardi*ed libraries provide a generic way to access host#speci$c features such as graphics, threading, and networ+ing! , ma-or bene$t of using bytecode is porting! .owever, the overhead of interpretation means that interpreted programs almost always run more slowly than programs compiled to native e%ecutables would! Just#in#"ime (J/") compilers were introduced from an early stage that compile bytecodes to machine code during runtime! /mplementations[edit] )ee also: 0ree Java implementations Oracle 1orporation is the current owner of the o2cial implementation of the Java )' platform, following their acuisition of )un Microsystems on January 34, 3565! "his implementation is based on the original implementation of Java by )un! "he Oracle implementation is available for 7indows, Mac O) 8, 9inu% and )olaris! :ecause Java lac+s any formal standardi*ation recogni*ed by 'cma /nternational, /)O;/'1, ,<)/, or other third#party standards organi*ation, the Oracle implementation is the de facto standard! "he Oracle implementation is pac+aged into two di=erent distributions: "he Java (untime 'nvironment (J(') which contains the parts of the Java )' platform reuired to run Java programs and is intended for end#users, and the Java >evelopment ?it (J>?), which is intended for software developers and includes development tools such as the Java compiler, Javadoc, Jar, and a debugger! OpenJ>? is another notable Java )' implementation that is licensed under the @A9! "he implementation started when )un began releasing the Java source code under the @A9! ,s of Java )' 4, OpenJ>? is the o2cial Java reference implementation! "he goal of Java is to ma+e all implementations of Java compatible! .istorically, )unBs trademar+ license for usage of the Java brand insists that all implementations be CcompatibleC! "his resulted in a legal dispute with Microsoft after )un claimed that the Microsoft implementation did not support (M/ or J</ and had added platform#speci$c features of their own! )un sued in 6DD4, and in 3556 won a settlement of E)F35 million, as well as a court order enforcing the terms of the license from )un![3G] ,s a result, Microsoft no longer ships 7indows with Java! Alatform#independent Java is essential to Java '', and an even more rigorous validation is reuired to certify an implementation! "his environment enables portable server#side applications! Aerformance[edit] Main article: Java performance Arograms written in Java have a reputation for being slower and reuiring more memory than those written in 1HH![3I][34] .owever, Java programsB e%ecution speed improved signi$cantly with the introduction of Just#in#time compilation in 6DD4;6DDJ for Java 6!6,[3J] the addition of language features supporting better code analysis (such as inner classes, the )tring:uilder class, optional assertions, etc!), and optimi*ations in the Java virtual machine itself, such as .ot)pot becoming the default for )unBs J&M in 3555! )ome platforms o=er direct hardware support for JavaK there are microcontrollers that can run Java in hardware instead of a software Java virtual machine, and ,(M based processors can have hardware support for e%ecuting Java bytecode through their Ja*elle option!