Máquina Virtual Java (Java Virtual Machine)
Com a linguagem Java, é possível desenvolver aplicações que rodem em uma infinidade de plataformas. Para isso, basta que elas tenham uma Java Virtual Machine (JVM) ou, em português, Máquina Virtual Java. Este artigo explicará o que esse mecanismo faz e o porque de ser um componente tão essencial à linguagem Java.
Introdução
Com a linguagem de programação Java, você pode, por exemplo,
criar um aplicativo que rode tanto no Linux quanto no
Windows. Mas a linguagem Java não se limita a esses sistemas
operacionais. É possível desenvolver aplicações para uma
infinidade de plataformas. Para isso, basta que elas tenham uma
Java Virtual Machine (JVM) ou, em português, Máquina
Virtual Java. Este artigo é voltado a iniciantes e explica o
que esse mecanismo faz e o por quê de ser um componente tão
essencial à linguagem Java.
Você já deve ter usado Java antes e não sabe. Por exemplo, em uma fila de banco, onde você fica jogando em seu telefone celular enquanto aguarda a sua vez. Os aplicativos feitos em Java estão presentes em uma infinidade de dispositivos, desde relógios até mainframes. Tudo isso graças a Máquina Virtual Java (Java Virtual Machine), que passaremos a chamar simplesmente de JVM a partir deste ponto.
A JVM é, em poucas palavras, um mecanismo que permite executar código em Java em qualquer plataforma. Segundo a definição da Sun, a principal responsável pela criação da linguagem Java, a JVM pode ser entendida como "uma máquina imaginária implementada via software ou hardware que executa instruções vindas de bytecodes". Os bytecodes são explicados mais à frente.
Para servir de exemplo, suponha que você desenvolveu um aplicativo para um telefone celular. Com poucas modificações, você poderá rodar esse mesmo aplicativo em um palmtop, como mostra a imagem abaixo:
O que é Máquina Virtual Java
Você já deve ter usado Java antes e não sabe. Por exemplo, em uma fila de banco, onde você fica jogando em seu telefone celular enquanto aguarda a sua vez. Os aplicativos feitos em Java estão presentes em uma infinidade de dispositivos, desde relógios até mainframes. Tudo isso graças a Máquina Virtual Java (Java Virtual Machine), que passaremos a chamar simplesmente de JVM a partir deste ponto.
A JVM é, em poucas palavras, um mecanismo que permite executar código em Java em qualquer plataforma. Segundo a definição da Sun, a principal responsável pela criação da linguagem Java, a JVM pode ser entendida como "uma máquina imaginária implementada via software ou hardware que executa instruções vindas de bytecodes". Os bytecodes são explicados mais à frente.
Para servir de exemplo, suponha que você desenvolveu um aplicativo para um telefone celular. Com poucas modificações, você poderá rodar esse mesmo aplicativo em um palmtop, como mostra a imagem abaixo:
Outro exemplo: um fabricante de geladeiras constatou que é mais confiável controlar a temperatura desse eletrodoméstico por software. Assim, seus engenheiros criaram um programa para esse fim e ele foi feito em Java. Para executá-lo, eles criaram uma JVM para essa moderna geladeira.
Imagine agora que um fabricante de aparelhos de som desenvolveu um software em Java para permitir que um de seus produtos fosse compatível com músicas no formato MP3. Meses depois, a empresa lançou um outro aparelho e aproveitou esse mesmo recurso nele. Tudo isso, graças a JVM desenvolvida para os aparelhos.
Os exemplos acima deixam claro que praticamente todo dispositivo pode rodar aplicações em Java. Basta que ele tenha uma JVM. A implementação de uma JVM pode ser feita em hardware, como em chips, ou em software, como a JVM existente para o Linux.