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.

56 cartões Português Nível: Ensino superior Programação Publicado
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.

Conjuntos relacionados

Mais em Programação →