Java e Orientação a Objetos

Compartilhado por um usuário do Flashcards.gg · gerado com IA · Denunciar este conjunto

Conceitos fundamentais da linguagem Java e da programação orientada a objetos para estudantes de computação.

50 cartões Português Nível: Ensino superior Programação Publicado
Uma versão maior deste conjunto: Java e Orientação a Objetos 2 (55 cartões)
Toque no cartão para virar

Cartões · 50

Classe
Molde ou modelo que define a estrutura de dados e os comportamentos comuns a todos os objetos daquele tipo.
Objeto
Instância concreta de uma classe que ocupa espaço em memória e possui estado e comportamento próprios.
Encapsulamento
Princípio de ocultar o estado interno de um objeto e exigir que todas as interações passem por métodos públicos.
Herança
Mecanismo que permite a uma classe reutilizar e estender atributos e métodos de outra classe base.
Polimorfismo
Capacidade de objetos de diferentes tipos responderem à mesma mensagem ou chamada de método de maneiras distintas.
Abstração
Ato de isolar elementos essenciais de um contexto do mundo real, ignorando detalhes não relevantes para o sistema.
Sobrecarga (Overloading)
Definição de múltiplos métodos na mesma classe com o mesmo nome, porém com diferentes assinaturas de parâmetros.
Sobrescrita (Overriding)
Redefinição em uma subclasse de um método que já foi fornecido pela sua superclasse com a mesma assinatura.
Interface
Contrato abstrato que define quais métodos uma classe deve implementar, sem fornecer a implementação na maioria dos casos.
Classe Abstrata
Classe que não pode ser instanciada diretamente e pode conter métodos abstratos e concretos para suas subclasses.
Modificador 'public'
Torna uma classe, atributo ou método acessível a partir de qualquer outra classe do projeto.
Modificador 'private'
Restringe o acesso de membros apenas à própria classe em que foram declarados.
Modificador 'protected'
Permite o acesso de membros por classes do mesmo pacote e por subclasses de qualquer pacote.
Modificador padrão (package-private)
Acesso atribuído por omissão que restringe o uso apenas a classes presentes no mesmo pacote.
Construtor
Método especial executado no momento da criação de um objeto para inicializar seus atributos fundamentais.
Palavra-chave 'this'
Referência à instância atual do objeto em que o método ou construtor está sendo executado.
Palavra-chave 'super'
Referência usada para acessar construtores, métodos ou atributos da superclasse imediata.
Palavra-chave 'static'
Indica que o membro pertence à classe como um todo, e não a instâncias específicas dela.
Palavra-chave 'final'
Torna variáveis imutáveis, impede que métodos sejam sobrescritos e proíbe a extensão de classes.
Garbage Collector
Processo automático da JVM que gerencia a memória liberando o espaço alocado para objetos sem referência ativa.
JVM (Java Virtual Machine)
Máquina virtual que executa bytecode compilado, garantindo a independência de plataforma do Java.
JRE (Java Runtime Environment)
Ambiente de execução que inclui a JVM e as bibliotecas essenciais para rodar programas Java.
JDK (Java Development Kit)
Kit completo de desenvolvimento contendo o compilador, ferramentas de depuração e o JRE.
Bytecode
Código intermediário gerado pelo compilador Java que pode ser interpretado ou compilado pela JVM.
Exceção Verificada (Checked Exception)
Subclasse de Exception que o compilador exige que seja tratada ou declarada com 'throws'.
Exceção Não Verificada (Unchecked Exception)
Subclasse de RuntimeException que representa falhas lógicas e não exige tratamento obrigatório pelo compilador.
Bloco 'try-catch'
Estrutura usada para tentar executar um bloco de código sujeito a erros e capturar exceções geradas.
Bloco 'finally'
Bloco de código que sempre executa após o try e catch, normalmente usado para liberar recursos externos.
Tipos Primitivos
Tipos de dados básicos do Java que armazenam valores diretamente na memória, como int, double e boolean.
Classes Wrapper
Classes utilitárias que encapsulam valores de tipos primitivos em objetos, como Integer e Double.
Autoboxing e Unboxing
Conversão automática feita pelo compilador entre tipos primitivos e suas respectivas classes wrapper.
String Pool
Região especial de memória onde literais de texto idênticos são reaproveitados para otimizar desempenho.
Imutabilidade da String
Característica que impede que o conteúdo de um objeto String seja modificado após a sua criação.
StringBuilder
Classe mutável usada para manipulação eficiente de sequências de caracteres quando não há concorrência.
Coleção 'List'
Interface que representa uma sequência ordenada de elementos que permite duplicatas e acesso por índice.
Coleção 'Set'
Interface que representa um conjunto matemático de elementos que não admite itens duplicados.
Coleção 'Map'
Interface que associa chaves exclusivas a valores específicos, permitindo busca rápida por chave.
Generics
Recurso que permite parametrizar tipos em classes e coleções, garantindo segurança de tipos em tempo de compilação.
Método 'equals()'
Método herdado de Object usado para verificar a igualdade semântica ou lógica entre dois objetos.
Método 'hashCode()'
Gera um valor inteiro numérico associado ao objeto, indispensável para coleções baseadas em hash.
Composição
Relacionamento estrutural em que um objeto possui outro como parte essencial de sua existência e ciclo de vida.
Agregação
Relacionamento de associação mais fraco onde o objeto dependente pode existir fora do objeto agregador.
Acoplamento
Grau de interdependência entre classes ou módulos do sistema; o ideal é que seja o mais baixo possível.
Coesão
Medida de quão focadas e relacionadas estão as responsabilidades de uma classe; o ideal é que seja alta.
Enum (Enumeração)
Tipo de dado especial usado para definir coleções nomeadas e fixas de constantes imutáveis.
Lambda Expressions
Funções anônimas que fornecem sintaxe concisa para implementar interfaces funcionais diretamente no código.
Interface Funcional
Interface que possui exatamente um único método abstrato e serve de base para o uso de lambdas.
Stream API
Recurso introduzido no Java 8 para processar coleções de dados de forma declarativa e paralelizável.
Classe 'Optional'
Contêiner que pode ou não conter um valor não nulo, criado para evitar erros de NullPointerException.
Thread
Menor unidade de processamento que pode ser executada de forma concorrente dentro de um programa Java.

Outras versões deste tópico

Conjuntos relacionados

Mais em Programação →