Pesquisa de site

Como Java funciona e compreensão da estrutura do código Java - Parte 2


Em nosso último post ‘O que é Java e a história do Java’ cobrimos o que é Java, recursos do Java em detalhes, histórico de lançamento e sua nomenclatura, bem como locais onde o Java é utilizado.

Aqui neste post iremos examinar o funcionamento e a estrutura do código da linguagem de programação Java. Antes de prosseguirmos, deixe-me lembrá-lo de que Java foi desenvolvido tendo em mente que “Write Once Run Anywhere/Anytime (WORA)” significa garantir que o aplicativo desenvolvido seja arquitetonicamente neutro, independente de plataforma e portátil.

Funcionamento de Java

Tendo esses objetivos em mente, o Java foi desenvolvido com o modelo de trabalho abaixo que pode ser classificado em quatro etapas.

Estágio 1

Escreva o arquivo de origem. Este arquivo contém todos os procedimentos, métodos, classes e objetos dentro do protocolo estabelecido para a linguagem de programação Java. O nome do arquivo fonte deve ser o nome da classe ou vice-versa. O nome do arquivo fonte deve ter extensão .java. Além disso, o nome do arquivo e o nome da classe diferenciam maiúsculas de minúsculas.

Estágio 2

Execute o arquivo de código-fonte Java por meio do Java Compiler. O compilador de código-fonte Java verifica erros e sintaxe no arquivo de origem. Ele não permitirá que você compile seu código-fonte sem satisfazer o compilador Java, corrigindo todos os erros e avisos.

Etapa 3

O compilador cria um arquivo de classe. Esses arquivos de classe herdam o mesmo nome do arquivo de código-fonte, mas a extensão varia. O nome do arquivo fonte tem extensão 'filename.java', onde a extensão do arquivo de classe criado pelo compilador é 'filename.class'. Este arquivo de classe é codificado em bytecode – bytecodes são como mágica.

Estágio 4

Este arquivo de classe criado pelo Java Compiler é portátil e arquitetonicamente neutro. Você pode portar este arquivo de classe para execução em qualquer arquitetura de processador e plataforma/dispositivo. Tudo que você precisa é de uma Java Virtual Machine (JVM) para executar esse código, não importa onde.

Agora entenda os quatro estágios acima usando um exemplo. Aqui está um pequeno exemplo de código do programa Java. Não se preocupe se você não entender o código abaixo. A partir de agora é só entender como funciona.

public class MyFirstProgram
{
    public static void main(String[] args)
    {
        System.out.println("Hello Tecmint, This is my first Java Program");
    }
}

1. Eu escrevi este programa e defini o nome da classe MyFirstProgram. É importante observar que este programa deve ser salvo como 'MyFirstProgram.java'.

Lembre-se do estágio 1 acima – O nome da classe e o nome do arquivo devem ser iguais e o nome do arquivo deve ter a extensão .java. Além disso, java diferencia maiúsculas de minúsculas, portanto, se o nome da sua classe for ‘MyFirstProgram’, o nome do arquivo de origem deverá ser ‘MyFirstProgram.java’.

Você não pode nomeá-lo como ‘Myfirstprogram.java’ ou ‘myfirstprogram.java’ ou qualquer outra coisa. Por convenção, é uma boa ideia nomear sua classe com base no que o programa está realmente fazendo.

2. Para compilar este arquivo fonte Java, você precisa passá-lo pelo compilador Java. O compilador Java irá essencialmente verificar o código-fonte em busca de qualquer erro e aviso. Ele não compilará o código-fonte até que todos os problemas sejam resolvidos. Para compilar o código-fonte Java, você precisa executar:

javac MyFirstProgram.java

Onde MyFirstProgram.java é o nome do arquivo de origem.

3. Após a compilação bem-sucedida, você notará que o compilador Java criou um novo arquivo no mesmo diretório cujo nome é MyFirstProgram.class.

Este arquivo de classe é codificado em bytecodes e pode ser executado em qualquer plataforma, qualquer arquitetura de processador, qualquer número de vezes. Você pode executar o arquivo de classe dentro da JVM (Java Virtual Machine) no Linux ou em qualquer outra plataforma simplesmente como:

java MyFirstProgram

Portanto, tudo o que você aprendeu acima pode ser resumido como:

Java Source Code >> Compiler >> classfile/bytecode >> Various devices running JVM 

Compreendendo a estrutura do código em Java

1. O arquivo de código-fonte Java deve conter uma definição de classe. Um arquivo Java Source pode conter apenas uma classe pública/classe de nível superior, mas pode conter muitas classes privadas/classes internas.

A classe externa/classe superior/classe pública pode acessar todas as classes privadas/classes internas. A classe deve estar entre chaves. Tudo em Java é um objeto e a classe é um modelo para o objeto.

Uma demonstração da classe pública/privada em Java:

public class class0
{
...
	private class1
	{
	…
	}

	private class 2
	{
	…
	}
...
}

2. A classe contém um ou mais métodos. O método deve estar entre chaves da classe. Um exemplo fictício é:

public class class0
{
	public static void main(String[] args)
	{
	…..
	…..
	}
}

3. Um método contém uma ou mais declarações/instruções. As instruções devem estar entre chaves do método. Um exemplo fictício é:

public class class0
{
	public static void main(String[] args)
	{
	System.out.println("Hello Tecmint, This is my first Java Program");
	System.out.println("I am Loving Java");
	…
	...
	}
}

Também é importante mencionar neste ponto – Cada declaração deve terminar com ponto e vírgula. Um exemplo fictício é:

System.out.println("Hello Tecmint, This is my first Java Program");
...
...
System.out.println("I am Loving Java");

Escrevendo seu primeiro programa Java com descrição detalhada. A descrição está sendo colocada como comentários aqui (// significa comentado) neste exemplo. Você deve escrever comentários dentro de um programa.

Não apenas porque é um bom hábito, mas também porque torna o código legível para você ou qualquer outra pessoa a qualquer momento.

// Declare a Public class and name it anything but remember the class name and file name must be same, say class name is MyProg and hence file name must be MyProg.java
public class MyProg

// Remember everything goes into curly braces of class?
{
 

// This is a method which is inside the curly braces of class.
   public static void main(String[] args)

    // Everything inside a method goes into curly braces	
    {
        
    // Statement or Instruction inside method. Note it ends with a semicolon
    System.out.println("I didn't knew JAVA was so much fun filled");
    
    // closing braces of method
    }

// closing braces of class
}

Uma descrição técnica detalhada do programa Java simples acima.

public class MyProg

Aqui no nome da classe acima está MyProg e MyProg é uma classe Pública, o que significa que todos podem acessá-la.

public static void main(String[] args)

Aqui o nome do método é main, que é um método público, significa que pode ser acessado por qualquer pessoa. O tipo de retorno é void, o que significa que não há valor de retorno. 'Strings[] args' significa que os argumentos para o método main devem ser um array que será chamado de args. Não se preocupe com o significado de ‘estático’ a partir de agora. Estaremos descrevendo em detalhes sobre isso quando necessário.

System.out.println("I didn't knew JAVA was so much fun filled");

System.out.ln pede à JVM para imprimir a saída na saída padrão, que é a linha de comando do Linux em nosso caso. Qualquer coisa que esteja entre colchetes da instrução println será impressa como está, a menos que seja uma variável. Entraremos em detalhes da variável mais tarde. A instrução termina com ponto e vírgula.

Mesmo que algo não esteja claro agora, você não precisa se preocupar com isso. Além disso, você não precisa de lembranças de nada. Basta ler a postagem e entender as terminologias e trabalhar mesmo quando a imagem não estiver muito clara.

É tudo por agora. Mantenha-se conectado ao Tecmint. Forneça-nos seus valiosos comentários nos comentários abaixo. Estamos trabalhando na próxima parte “classe e método principal em Java” e publicaremos em breve.