Aprendendo Java Para Certificação #2

Tempo de leitura: 5 min

Escrito por blackzig
em 03/07/2019

Classes versus Arquivos

Na maioria das vezes, cada classe Java é definida pelo arquivo *.java. Normalmente é pública, que significa que qualquer código pode invocá-la. Curiosamente, Java não requer que a classe seja pública. Se você não sabe ou não lembra as declarações de uma classe visite: http://bit.ly/2FOXbOb. Um exemplo de classe sem declaração.

class Animal{

            String name;

}

Você pode colocar duas classes no mesmo arquivo. Quando é feito isto, no máximo uma das classes é permitido ser pública. Exemplo:

public class Animal{

            private String name;

}

class Animal2{

}

Se você tem uma classe pública o arquivo deve ter o mesmo nome, pegando o exemplo anterior, se você nomear o arquivo para Animal2 o programa não irá compilar.

Escrevendo um Método main()

Um programa Java começa executando o método main(). Um método main() é uma ponte entre o começo dos processos do Java, o qual manipula a Java Virtual Machine(JVM), e o começo do código do programador. A JVM conversa com o sistema operacional para alocar memória e tempo de CPU, acessos de arquivos e assim por diante.

O método main() nos prende neste processo, mantendo o nosso código rodando. Uma simples classe com um método main() se aparece assim:

public class Zoo{

            public static void main(String[] args){

            }

}

Este código não faz nada útil. Não há outra instrução a não ser o começo (o ponto de partida). Todo código Java deve ter esta instrução, senão não irá fazer compilação do programa. Para compilar este exemplo deve-se fazer a seguinte instrução:

javac Zoo.java

java Zoo

Se não aparecer nenhum erro, você conseguiu compilar e executar um programa Java. Se apareceu algum erro, veja se você tem o JDK instalado. Fiz um vídeo mostrando a instalação do JDK http://bit.ly/aula3CJ e outro mostrando a compilação e execução http://bit.ly/aula4CJ.

Para compilar um programa você deve ter um arquivo .java. O nome do arquivo deve ser o mesmo da classe. O resultado da compilação será um arquivo bytecode com o mesmo nome, mas com a extensão .class. Bytecode é a instrução para a JVM saber o que deve ser feito. Para executar o programa depois de compilado não se deve colocar nenhuma extensão depois da palavra java, como no exemplo: java Zoo. É errado colocar por exemplo, java Zoo.class ou java Zoo.java.

Vamos revisar as regras:

  • Cada arquivo deve ter uma única classe principal, mesmo aqueles que tem mais de uma classe, a principal será a pública.
  • O nome do arquivo deve ser o mesmo da classe e deve ter extensão .java.

Vamos dar uma olhada novamente no método main(). A keyword public é o que chamamos de modificador de acesso(access modifier). Esta declaração expõe o arquivo para que outros o invoque, ou seja, possa ser acessado de qualquer parte do programa.

A keyword static permite que o método seja invocado apenas pelo nome da classe, por exemplo, Zoo.main(). Desta maneira o Java não precisa criar um objeto para chamar o método main(). Não sabe o que é um objeto? Veja o artigo http://bit.ly/2FNRIqG. Se o método main() não estiver presente na classe principal do programa, você verá uma mensagem de erro. Se o método main não for static, um erro também será apresentado.

A keyword void representa um tipo de retorno(return type). Um método que não retorna nenhum tipo de dado para o seu invocador. Nós temos no método main() uma lista de parâmetros que é um array do Java o String[] args. Há outras maneiras de escrever este array, String args[] ou String… args; o compilador aceita qualquer um deles. A variável args representa os valores que a lista contém, estes valores podem ser lidos quando a JVM inicia. A variável não precisa chamar args, mas por padrão todos deixam com este nome. Os [] representa o array. Um array é uma lista de tamanho fixa que contém valores do mesmo tipo. A outra representação de um array é o (…) que é chamado de varargs.

Agora vamos fazer alguns testes.

public class Zoo{

            public static void main(String[] args){

                        System.out.println(args[0]);

                        System.out.println(args[1]);

            }

}

args[0] acesse o primeiro elemento de um array. Um array começa a ser contado do zero. Execute o programa:

javac Zoo.java

java Zoo Bronx Zoo

A saída dever ser:

Bronx

Zoo

O programa identificou corretamente as duas palavras passadas como argumento. Os espaços entre elas são utilizados para separar os argumentos. Se precisar de espaço em uma palavra do argumento você precisa usar aspas.

javac Zoo.java

java Zoo “San Diego” Zoo

A saída deve ser:

San Diego

Zoo

Todos os argumentos são tratados como objetos String, mesmo que representem outros tipos.

javac Zoo.java

java Zoo Zoo 2

A saída deve ser:

Zoo

2

O programa espera dois argumentos e se eu passar só um. O que acontece?

javac Zoo.java

java Zoo Zoo

O Java irá ler o primeiro argumento, mas quando for ler o segundo…

Gera uma exceção porque não há nada no segundo argumento.

Lembrando que para compilar um programa você deve ter instalado na máquina o JDK, mas se for só executar um programa você precisa apenas do JRE, que é o Java padrão que todos instalam na máquina. Para executar um programa Java basta a máquina ter o Java instalado, não importa qual o sistema operacional esta máquina estiver operando já que o programa roda na JVM.

Livro fonte: OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808 (English Edition) 

https://amzn.to/2JjU9Cn

 Curso de Desenvolvimento Web Completo  

>>> http://bit.ly/2FnB5Sp   


 Curso Java Para Iniciantes  

>>> http://bit.ly/java-swing  

#java #certificação 

Você vai gostar também:

Para enviar seu comentário, preencha os campos abaixo:

Deixe um comentário


*


*


Seja o primeiro a comentar!

Damos valor à sua privacidade

Nós e os nossos parceiros armazenamos ou acedemos a informações dos dispositivos, tais como cookies, e processamos dados pessoais, tais como identificadores exclusivos e informações padrão enviadas pelos dispositivos, para as finalidades descritas abaixo. Poderá clicar para consentir o processamento por nossa parte e pela parte dos nossos parceiros para tais finalidades. Em alternativa, poderá clicar para recusar o consentimento, ou aceder a informações mais pormenorizadas e alterar as suas preferências antes de dar consentimento. As suas preferências serão aplicadas apenas a este website.

Cookies estritamente necessários

Estes cookies são necessários para que o website funcione e não podem ser desligados nos nossos sistemas. Normalmente, eles só são configurados em resposta a ações levadas a cabo por si e que correspondem a uma solicitação de serviços, tais como definir as suas preferências de privacidade, iniciar sessão ou preencher formulários. Pode configurar o seu navegador para bloquear ou alertá-lo(a) sobre esses cookies, mas algumas partes do website não funcionarão. Estes cookies não armazenam qualquer informação pessoal identificável.

Cookies de desempenho

Estes cookies permitem-nos contar visitas e fontes de tráfego, para que possamos medir e melhorar o desempenho do nosso website. Eles ajudam-nos a saber quais são as páginas mais e menos populares e a ver como os visitantes se movimentam pelo website. Todas as informações recolhidas por estes cookies são agregadas e, por conseguinte, anónimas. Se não permitir estes cookies, não saberemos quando visitou o nosso site.

Cookies de funcionalidade

Estes cookies permitem que o site forneça uma funcionalidade e personalização melhoradas. Podem ser estabelecidos por nós ou por fornecedores externos cujos serviços adicionámos às nossas páginas. Se não permitir estes cookies algumas destas funcionalidades, ou mesmo todas, podem não atuar corretamente.

Cookies de publicidade

Estes cookies podem ser estabelecidos através do nosso site pelos nossos parceiros de publicidade. Podem ser usados por essas empresas para construir um perfil sobre os seus interesses e mostrar-lhe anúncios relevantes em outros websites. Eles não armazenam diretamente informações pessoais, mas são baseados na identificação exclusiva do seu navegador e dispositivo de internet. Se não permitir estes cookies, terá menos publicidade direcionada.

Visite as nossas páginas de Políticas de privacidade e Termos e condições.

Importante: Este site faz uso de cookies que podem conter informações de rastreamento sobre os visitantes.
Criado por WP RGPD Pro

Aprenda a Criar e Programar Jogos Completos em 2D e 3D!

Seja um Desenvolvedor de Jogos Profissional