2. Java Interpreter

2.1. Java Interpreter

It is a program that interprets the bytecodes and changes the states of a simulated virtual machine.

Java Virtual Machine:

It is a specification for an architecture independent state machine. This machine is implemented by the Java Interpreter.

Runtime Environment:

The support environment attached to the virtual machine. It connects the virtual machine to the underlying OS and add many basic functions, like I/O, networking, etc.

Portability:

Java bytecodes can run in any machine that has a Java Interpreter running. It is not necessary to recompile the Java program. Only the virtual machine and the runtime system need to be ported to each architecture.

2.2. Main Features

  • Automatic Garbage Collection.

  • Multithreading with synchronization primitives.

  • Runtime type checking.

  • Dynamic linking on demand (even over the Internet).

2.3. Java Basic Libraries

java.lang

The collection of basic classes like Object, Class, String, etc.

java.io

I/O classes like Streams, IOStreams, etc.

java.util

Miscellaneous utility classes, like Dictionary, Stack, Date, Time, etc.

java.awt

Abstract Windowing Toolkit - Classes to deal with graphics (machine independently).

2.4. Audio

Audio in Portuguese