Aula 1 - Introdução Ao Java e POO
Aula 1 - Introdução Ao Java e POO
Sobre o Java
JVM Biblioteca
Sobre o Java
Processo de Criação
1) Ambiente de Desenvolvimento Integrado (IDE)
.
2) Compilação
• O compilador Java
converte o código-fonte
Java em bytecodes.
• O compilador faz parte da
JDK (Java Development
Kit) e está presente no IDE
NetBeans.
• O Java Virtual Machine
(JVM) executa bytecodes.
3) Carregamento na Memória
Erinaldo
1984
27
81 9999-9812
Registro
Abstrair - observar (um ou mais elementos de um todo), avaliando características e propriedades em separado.
Exemplo
Veículo
Funcionário Cliente
Classe, Atributo e Método
Classe
Características Comportamentos
- Cor: Amarelo; - Acelerar
- Fabricante: Jeep; - Frear
- Ano de fabricação: 2020
Classe
• byte • int
• Tamanho: 8 bits • Tamanho: 32 bits
• De -128 a 127. • De -2.147.483.648 a 2.147.483.647
• short • long
Ex.: long num = 25L;
• Tamanho: 16 bits • Tamanho: 64 bits
• De -32768 a 32767. • De -9.223.372.036.854.775.808L a
9.223.372.036.854.775.807L
Obs.: O “L” no final é obrigatório para este tipo de variável.
Ele indica que o valor atribuído à variável deve ser tratado
como long.
Tipo Real
• Tamanho: 32 bits
• Representam números de ponto flutuante de precisão simples.
• Podem ter até 7 dígitos significativos.
• double
• Tamanho: 64 bits
• Representam números de ponto flutuante de dupla precisão.
• Podem ter até 15 dígitos significativos.
Obs.: O “F” no final é obrigatório para este tipo de variável. Ele indica que o valor atribuído à variável deve ser tratado
como float.
Tipo Caractere
• char
• Tamanho: 16 bit
• Suporta caracteres da tabela UNICODE.
• Pode ser usado da seguinte forma:
• Um caractere entre aspas simples (‘ ’). Ex.: char a = ‘M’;
• Número inteiro de 0 a 65535, sem aspas, que será substituído por um
caractere da tabela UNICODE. Ex.: char a = 66; // Representa o B
• Representar um caractere da tabela UNICODE, entre aspas simples, pelo
seu valor em hexadecimal. Ex.: char a = ‘\u0042’; // Representa o B
Obs.: Para utilizar a representação em hexadecimal é obrigatório utilizar o prefixo u (minúsculo) antes do valor em
hexadecimal. Em java, para acrescentar este prefixo deve utilizar o caractere de escape \.
Exemplo
Obs.: Literal de caractere é um valor inteiro – não necessariamente um número – representado como caractere entre aspas
simples.
Tipo Lógico
• boolean
• Tamanho: 1 bit
• Possui valores true ou false
// Instrução
}
Alguns Conceitos - Métodos
Obs.: O return retorna a variável de instância media quando é chamado. Como o método getMedia não possui
parâmetro não precisa passar nenhum argumento no momento quando ele é chamado.
O método main
Obs.: Declarar main como static permite que a JVM invoque main sem criar uma instância da classe.
Método de Classe
Obs.: O tipo de retorno é ignorado pelo compilador na verificação de sobrecarga do método desde que a assinatura
deles seja idêntica. Neste caso o compilador identificará dois métodos distintos.
Sobrecarga de Métodos
Obs.: Este exemplo mostra que a assinatura dos métodos são distintas mesmo tendo o mesmo número de
parâmetros e tipo, mas a ordem é diferente.
Objeto
Objeto
Modificador de Nome da
acesso classe
public Aluno() {
}
Construtor Padrão
Obs.: Não é possível criar mais de um construtor padrão (sem parâmetros) na mesma classe.
Construtor Personalizado
Cast
Promoção de Argumento
cast cast
Promoção de Argumento
O corpo do método
compreende o que
está entre { e }.
Regras Básicas de Escopo das Declarações
O bloco compreende o
que está entre { e }.
Neste exemplo a e b
são variáveis locais.
• É processo de ocultação de
uma variável da classe
quando, dentro de um método
ou bloco, uma variável local
ou um parâmetro tiver o
mesmo nome da variável da
classe.
O exemplo ao lado mostra o sombreamento das variáveis
nome e idade já que o parâmetro do método exibe tem o
mesmo nome dos campos da classe.
Sombreamento
O projeto Aula-2DS possui dois pacotes (aulas e exercícios). E cada pacote tem uma classe.
Pacote
Obs.: Por convenção de código os nomes dos pacotes devem ser o nome do domínio da empresa invertido.
Modificadores de Acesso
Modificadores de Acesso