CodeGym
Promoção
Aprendizagem
Cursos
Tarefas
Pesquisas & Questionários
Jogos
Ajuda
Cronograma
Comunidade
Usuários
Fórum
Chat
Artigos
Histórias de sucesso
Atividade
Avaliações
Assinaturas
Tema claro

Aulas

  • Avaliações
  • Sobre nós
Iniciar
Comece a aprender
Comece a aprender agora
  • Meu progresso
  • Cursos
  • Mapa da Missão
  • Aulas
  • Inicialização de objeto: ordem de inicialização

    JAVA 25 SELF
    Nível 14,Aula 5
    Vamos analisar passo a passo como o Java inicializa um objeto: valores padrão dos campos, inicialização explícita, blocos de inicialização não estáticos e a chamada final do construtor via new. No exemplo da classe Person veremos a ordem efetiva da saída, uma tabela de valores padrão, um fluxograma e erros típicos (duplicação de lógica, expectativas sobre static, trabalho com null, chamada de construtor via this(...)).
    Disponível
  • Debug no IntelliJ IDEA

    JAVA 25 SELF
    Nível 14,Aula 6
    Como encontrar um erro sem perder a cabeça. Aprendendo a usar o Debugger: breakpoints, execução passo a passo, visualização de variáveis e avaliação de expressões em tempo real.
    Disponível
  • Princípios de encapsulamento: para que serve

    JAVA 25 SELF
    Nível 15,Aula 0
    Nesta aula, vamos entender o que é encapsulamento em Java, como ele é implementado com campos privados ( private) e uma interface pública (métodos public), por que ocultar o estado interno dos objetos e como isso aumenta a confiabilidade e a manutenibilidade do código. Você verá exemplos ruins e bons, aplicações práticas, uma tabela comparativa de abordagens e erros comuns.
    Disponível
  • Modificadores de acesso

    JAVA 25 SELF
    Nível 15,Aula 1
    Nesta aula analisamos os níveis de acesso em Java: public, protected, package-private e private. Vamos entender onde e por que aplicar cada um, como proteger campos (encapsulamento), quais regras escolher para métodos e construtores, veremos exemplos com pacotes e herança, bem como melhores práticas e erros comuns.
    Disponível
  • Getters e setters: sintaxe e boas práticas

    JAVA 25 SELF
    Nível 15,Aula 2
    Nesta aula, você verá como, com encapsulamento e os métodos get/ set, controlar o acesso aos campos de uma classe em Java. Você conhecerá as convenções JavaBeans, a especificidade para campos do tipo boolean com getters isXxx(), verá exemplos de validação em setters, trabalho seguro com campos mutáveis e a geração automática de acessores na IDE.
    Disponível
  • Inicialização de campos estáticos e final

    JAVA 25 SELF
    Nível 15,Aula 3
    Nesta aula, você vai entender como inicializar campos estáticos ( static) e imutáveis ( final) em Java: na declaração, em bloco estático de inicialização e também em construtores. Falaremos sobre o combo de constantes public static final, o acesso correto a estáticos, a ordem de inicialização e os erros típicos que vale evitar.
    Disponível
  • Blocos de inicialização

    JAVA 25 SELF
    Nível 15,Aula 4
    Nesta aula você vai entender os blocos de inicialização em Java: qual é a diferença entre blocos não estáticos e static blocos, em que ordem são executados campos, blocos e construtores, quando é apropriado extrair a lógica comum para blocos e quando é melhor usar construtores. Vamos analisar exemplos, nuances de herança e erros típicos.
    Disponível
  • Classes internas (non-static inner)

    JAVA 25 SELF
    Nível 16,Aula 0
    Vamos analisar as classes internas (non-static inner) em Java: o que são e como elas se relacionam com a instância da classe externa, como declará-las e criá-las via outer. new Inner(), como elas obtêm acesso a membros com modificadores private/ public, quais limitações existem (nenhum membro static, exceto constantes), bem como opções de visibilidade e exemplos práticos: Backpack.Item, o iterador de sua própria coleção e a referência ao objeto externo via OuterClassName. this. No final — erros típicos e como evitá-los.
    Disponível
  • Classes aninhadas estáticas (static nested)

    JAVA 25 SELF
    Nível 16,Aula 1
    Analisamos as classes aninhadas estáticas em Java: o que são, em que diferem das internas (inner), como declará-las com o modificador static, como criar instâncias sem um objeto da classe externa e quais regras de acesso se aplicam (nada de OuterClass.this, acesso apenas a membros estáticos). Mostraremos cenários práticos — Builder, nós internos Node em estruturas, utilitários — compararemos com inner classes, adicionaremos um diagrama e analisaremos erros típicos: confusão com outer.new Inner() e a chamada correta new Outer.Nested().
    Disponível
  • Classes anônimas

    JAVA 25 SELF
    Nível 16,Aula 2
    Nesta aula, analisamos classes anônimas em Java: o que são, como são declaradas e criadas no ponto de uso, como o compilador nomeia seus arquivos .class, limitações (final/efetivamente final, ausência de construtor, blocos de inicialização) e cenários práticos de uso. Mostraremos o acesso aos membros da classe externa e veremos erros típicos.
    Disponível
  • Classes locais: declaração dentro de métodos

    JAVA 25 SELF
    Nível 16,Aula 3
    Vamos explorar classes locais em Java: o que são, como declará-las dentro de métodos e blocos, quais restrições existem para modificadores e membros estáticos, e como funciona o acesso às variáveis do método (apenas final/ efetivamente final). Vamos comparar com classes anônimas, ver exemplos práticos (comparador, estrutura de dados temporária, miniresultado de teste) e erros comuns. Você vai entender quando uma classe local é mais adequada do que uma anônima e por que é importante lembrar de static e de public/ private/ protected.
    Disponível
  • Introdução aos generics

    JAVA 25 SELF
    Nível 16,Aula 4
    Introdução prática aos Generics (genéricos) em Java: por que armazenar em Object é perigoso, como declarar classes e métodos genéricos, como usar Box<T>, pares e métodos universais, e quais vantagens a segurança de tipos oferece sem conversões explícitas. Vamos discutir as limitações (primitivos, apagamento de tipos) e analisar exemplos de uso.
    Disponível
  • 1
  • ...
  • 7
  • 8
  • 9
  • 10
  • 11
  • ...
  • 30
Aprender
  • Cadastro
  • Curso de Java
  • Ajuda com Tarefas
  • Preços
  • Sintaxe Java
Comunidade
  • Usuários
  • Artigos
  • Fórum
  • Chat
  • Histórias de sucesso
  • Atividade
  • Programa de afiliados
Empresa
  • Sobre nós
  • Contatos
  • Avaliações
  • Sala de imprensa
  • CodeGym for EDU
  • Perguntas frequentes
  • Suporte
CodeGymCodeGym é um curso online para aprender programação Java do zero. Este curso é uma maneira perfeita de dominar Java para iniciantes. Contém mais de 1.200 tarefas com verificação instantânea e um escopo essencial da teoria dos fundamentos de Java. Para ajudar você a ter sucesso nos estudos, implementamos um conjunto de recursos motivacionais: questionários, projetos de programação, conteúdo sobre aprendizagem eficiente e carreira de desenvolvedor Java.
Siga-nos
Idioma da interface
English Deutsch Español हिन्दी Français
Português
Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
"Programadores se formam, não nascem" © 2026 CodeGym
MastercardVisa
"Programadores se formam, não nascem" © 2026 CodeGym