Linguagem Java
Compartilhado por um usuário do Flashcards.gg · gerado com IA · Denunciar este conjunto
Conceitos fundamentais da linguagem de programação Java, incluindo POO, JVM e estruturas essenciais.
Toque no cartão para virar
Cartões · 56
- JVM (Java Virtual Machine)
- Máquina virtual responsável por executar o bytecode Java de forma independente do sistema operacional.
- Bytecode
- Código intermediário gerado pela compilação de arquivos .java em arquivos .class, executado pela JVM.
- JDK (Java Development Kit)
- Pacote completo de ferramentas de desenvolvimento, incluindo o compilador (javac) e o JRE.
- JRE (Java Runtime Environment)
- Ambiente de execução que fornece a JVM e as bibliotecas essenciais para rodar programas Java.
- Garbage Collector
- Processo automático da JVM que identifica e desaloca a memória ocupada por objetos não mais utilizados.
- Classe
- Molde ou estrutura que define atributos e métodos compartilhados por objetos do mesmo tipo.
- Objeto
- Instância concreta de uma classe que possui estado próprio e comportamento definido.
- new
- Operador utilizado para instanciar novos objetos e alocar memória na Heap.
- Construtor
- Método especial chamado durante a instanciação para inicializar o estado de um novo objeto.
- this
- Palavra-chave que referencia a instância do objeto atual em execução.
- Encapsulamento
- Pilar da POO que restringe o acesso direto aos dados de um objeto, expondo apenas métodos públicos seguros.
- Herança
- Mecanismo que permite a uma subclasse herdar atributos e comportamentos de uma superclasse.
- Polimorfismo
- Capacidade de tratar objetos derivados por meio de uma referência comum, assumindo diferentes comportamentos.
- Abstração
- Princípio de expor apenas os detalhes essenciais de um sistema, ocultando a complexidade da implementação.
- Modificador public
- Permite acesso ao elemento a partir de qualquer outra classe em qualquer pacote.
- Modificador private
- Restringe o acesso ao elemento exclusivamente dentro da classe onde foi declarado.
- Modificador protected
- Permite acesso no mesmo pacote e por subclasses declaradas em outros pacotes.
- Acesso Package-Private (padrão)
- Visibilidade padrão quando não há modificador explícito; visível apenas dentro do mesmo pacote.
- Modificador static
- Indica que o membro pertence à classe em si, e não a uma instância individual.
- Modificador final
- Torna variáveis constantes, impede a sobrescrita de métodos e proíbe a herança de classes.
- super
- Palavra-chave que faz referência direta a membros ou construtores da superclasse imediata.
- Sobrecarga (Overloading)
- Definição de múltiplos métodos com o mesmo nome na mesma classe, diferenciando-se pelos parâmetros.
- Sobrescrita (Overriding)
- Redefinição de um método herdado da superclasse dentro de uma subclasse, com a mesma assinatura.
- @Override
- Anotação que informa ao compilador a intenção de sobrescrever um método da superclasse.
- Classe abstrata
- Classe que não pode ser instanciada diretamente e serve como modelo base contendo ou não métodos abstratos.
- Interface
- Contrato que define métodos que devem ser implementados por classes, sem manter estado de instância.
- default method
- Método declarado em interfaces com implementação padrão pré-definida, introduzido no Java 8.
- Tipos primitivos
- Tipos básicos de dados que armazenam valores diretamente: byte, short, int, long, float, double, char e boolean.
- Wrapper classes
- Classes de objetos que encapsulam tipos primitivos, como Integer, Double e Boolean.
- Autoboxing
- Conversão automática feita pelo compilador entre um tipo primitivo e sua respectiva classe wrapper.
- Unboxing
- Conversão automática de um objeto wrapper de volta para o seu valor primitivo equivalente.
- String Pool
- Área de memória especial na Heap onde a JVM armazena literais de String para evitar duplicações.
- Imutabilidade de String
- Característica pela qual o valor de uma String não pode ser alterado após sua criação em memória.
- StringBuilder
- Classe mutável usada para manipulação eficiente de strings em um ambiente de thread única.
- StringBuffer
- Versão sincronizada e thread-safe de StringBuilder, usada para manipular texto concorrentemente.
- equals()
- Método herdado de Object usado para verificar a igualdade lógica de conteúdo entre dois objetos.
- hashCode()
- Método que retorna um valor numérico inteiro representativo do objeto, usado em coleções hash.
- try-catch
- Bloco estruturado para captura e tratamento de exceções lançadas durante a execução do código.
- finally
- Bloco que sempre executa após o try-catch, comumente usado para liberação de recursos.
- try-with-resources
- Estrutura do Java 7 que fecha automaticamente objetos que implementam AutoCloseable após o uso.
- throw
- Instrução utilizada para lançar explicitamente uma instância de exceção no fluxo de execução.
- throws
- Palavra-chave na assinatura de um método que declara quais exceções checadas ele pode propagar.
- Checked Exception
- Exceção subclasse de Exception que o compilador exige que seja tratada ou declarada com throws.
- Unchecked Exception (RuntimeException)
- Exceção originada de erros de lógica que não exige tratamento obrigatório em tempo de compilação.
- Collection Framework
- Conjunto padronizado de interfaces e classes para armazenar e manipular grupos de objetos em Java.
- List
- Interface de coleção ordenada que permite elementos duplicados e acesso via índice numérico.
- ArrayList
- Implementação de List baseada em um array redimensionável dinamicamente, rápida para leitura.
- LinkedList
- Implementação duplamente encadeada de List e Deque, eficiente para inserções e remoções frequentes.
- Set
- Interface de coleção que não permite elementos duplicados e não garante ordem de inserção padrão.
- HashSet
- Implementação de Set apoiada por tabela hash, oferecendo operações em tempo constante O(1).
- Map
- Interface que mapeia chaves exclusivas para valores correspondentes, sem permitir chaves duplicadas.
- HashMap
- Implementação padrão de Map que utiliza tabela hash, permitindo uma chave nula e valores nulos.
- Generics
- Recurso que permite parametrizar tipos em classes e métodos, garantindo type-safety em compilação.
- Expressão Lambda
- Sintaxe concisa para criar implementações anônimas de interfaces funcionais, introduzida no Java 8.
- Stream API
- Recurso para processar sequências de elementos com operações funcionais como filter, map e reduce.
- Optional
- Contêiner que pode ou não conter um valor não nulo, reduzindo a incidência de NullPointerException.