A linguagem de programação Java foi desenvolvida no início da década de 1990 pela Sun Microsystem. Java é uma linguagem de programação orientada a objetos, simples, eficiente, robusta e de uso geral. É usado principalmente para aplicativos corporativos baseados na web. Ele foi inicialmente projetado para aplicações de rede embarcadas executadas em diferentes plataformas.
Quando começamos a aprender Programação Java , surge uma questão: se Java é interpretado ou compilado, ou ambos. Além disso, esta pergunta pode ser feita pelo entrevistado em suas entrevistas relacionadas a Java. Então a resposta a esta pergunta é Java é interpretado e compilado . No entanto, não está claro se Java é compilado ou interpretado. Ele não gera código de máquina após compilar um arquivo fonte nem interpreta o arquivo fonte para executar instruções de código linha por linha. Para responder a esta pergunta, precisamos entender como Java é uma linguagem independente de plataforma. O que significa que podemos escrever código Java em uma plataforma e executá-lo em outras plataformas, como uma máquina operacional de hardware, sem fazer nenhuma alteração. Portanto, compreender como o Java alcança a independência de plataforma fornecerá uma resposta completa a esta questão.
Java é totalmente portátil; o mesmo código Java será executado de forma idêntica em plataformas diferentes, independentemente da compatibilidade de hardware ou sistemas operacionais.
O código-fonte Java é primeiro compilado em um código de bytes binário usando o compilador Java e, em seguida, esse código de bytes é executado na JVM (Java Virtual Machine), que é um interpretador baseado em software. Portanto, Java é considerado interpretado e compilado.
O código de bytes compilado permite JVM ser pequeno e eficiente e de rápido desempenho. Além disso, esse código de bytes fornece portabilidade para a linguagem de programação Java. Ele permite executar este código em qualquer JVM devidamente implementada em uma máquina, independentemente dos componentes e configurações de hardware e software da máquina. Quase todos os navegadores da web contêm JVM para executar o código do miniaplicativo Java.
Vamos entender isso com um programa Java simples:
Programa Java simples e está funcionando
Crie um arquivo .java simples usando seu editor de texto favorito:
Coloque o código abaixo nele:
class Basic{ public static void main(String args[]){ System.out.println('Hello JavaTpoint'); } }
E salve o arquivo.
Agora, verifique nosso diretório onde salvamos o arquivo .java.
Podemos executar uma aplicação Java seguindo duas etapas.
- Compilar o programa Java
- Execute o aplicativo
Compile o aplicativo Java:
Para compilar o programa Java, execute o comando abaixo:
javac Basic.java
O comando acima irá compilar o programa Java e criar um arquivo .class do programa Java que contém o código de bytes do aplicativo Java.
Podemos ver na saída acima que após compilar o programa Java, um arquivo .class é criado. Este arquivo contém o código de bytes do programa Java. Podemos executar este código de bytes em qualquer uma das máquinas que implementam JVM.
Execute o aplicativo:
Para executar este aplicativo, execute o comando abaixo:
java Basic
O comando acima executará o código de bytes e executará a funcionalidade do programa:
A partir da saída acima, imprimimos uma declaração simples.
Execução passo a passo do programa Java:
- Escreva o código Java e salve o arquivo com .Java
- Agora, este arquivo será compilado usando o compilador Java, que é javac.
- O compilador Java compilará o arquivo Java e criará um arquivo .class com código de bytes (que na verdade não é um código de máquina, ao contrário do compilador C)
- Esse código de bytes gerado é um código não executável e agora precisa de um interpretador para convertê-lo em código de máquina. Aqui a JVM cuida disso.
- Agora, a JVM executará esse código de bytes para executar o código de bytes Java em uma máquina.
- Agora, nosso programa executará a funcionalidade e fornecerá a saída desejada.
Conclusão:
Java é considerado interpretado e compilado. Ele usa um compilador Java (javac) e JVM (que na verdade é um interpretador baseado em software) para executar completamente um aplicativo Java em uma máquina.