NetRunner: Java Mastery Guide 1.0 Help

Tipos de Referência

REFERENCE TYPES ├── Classes ├── Interfaces ├── Arrays └── Enums

Classes

Definição e Uso

// Declaração String mensagem = new String("Conexão estabelecida"); StringBuilder buffer = new StringBuilder(); // Null é permitido String dados = null;

Classes Comuns

// Wrapper classes Integer numero = 42; Double valor = 3.14; Boolean flag = true; // Utilitários Date data = new Date(); Random gerador = new Random();

Arrays

Declaração e Inicialização

// Arrays unidimensionais int[] numeros = new int[5]; String[] comandos = {"LOGIN", "EXECUTE", "LOGOUT"}; // Arrays multidimensionais int[][] matriz = new int[3][3];

Manipulação

// Acessando elementos int primeiro = numeros[0]; // Modificando elementos numeros[1] = 42; // Comprimento int tamanho = numeros.length;

Enums

Definição

public enum NivelAcesso { ADMIN, USUARIO, CONVIDADO }

Uso

NivelAcesso nivel = NivelAcesso.ADMIN; switch (nivel) { case ADMIN: System.out.println("Acesso total"); break; case USUARIO: System.out.println("Acesso parcial"); break; case CONVIDADO: System.out.println("Acesso limitado"); break; }

Interfaces

Implementação

public interface Conexao { void conectar(); void desconectar(); } public class ConexaoSegura implements Conexao { @Override public void conectar() { // Implementação } @Override public void desconectar() { // Implementação } }

Diferenças dos Primitivos

Características

REFERENCE VS PRIMITIVE ├── Armazenamento (Heap vs Stack) ├── Null permitido ├── Métodos disponíveis └── Overhead de memória

Exemplo

// Primitivo int x = 10; // Referência Integer y = 10; y.toString(); // Métodos disponíveis y = null; // Permitido

Garbage Collection

Ciclo de Vida

OBJECT LIFECYCLE ├── Criação (new) ├── Referenciação ├── Desreferenciação └── Coleta de lixo

Exemplo

String texto = new String("temp"); // Objeto criado texto = null; // Objeto elegível para GC

Collections Framework

Tipos Principais

// List List<String> lista = new ArrayList<>(); // Set Set<Integer> conjunto = new HashSet<>(); // Map Map<String, Integer> mapa = new HashMap<>();

Boas Práticas

Recomendações

BEST PRACTICES ├── Inicialize referências ├── Use interfaces apropriadas ├── Verifique null └── Libere recursos

Exemplo

// Verificação de null if (objeto != null) { objeto.metodo(); } // Try-with-resources try (Scanner scanner = new Scanner(System.in)) { // Uso do scanner }

Próximos Passos

Tópicos Relacionados

Type Casting

26 June 2025