Learning Hub Logo
Java
  • Introdução ao Java
  • Como instalar o Java
  • Primeiro programa
  • Sintaxe básica
  • Comentários
  • Variáveis
  • Tipos de dados
  • Type Casting
  • Operadores aritméticos
  • Operadores de atribuição
  • Operadores de comparação
  • Operadores lógicos
  • Strings
  • Métodos de String
  • Math
  • Booleanos
  • Condicionais
  • Switch
  • Loop: while e do-while
  • Loop: for
  • Break e Continue
  • Arrays
  • Arrays multidimensionais
  • Métodos
  • Parâmetros e sobrecarga de métodos
  • Escopo de variáveis
  • Recursão
  • Introdução a POO
  • Classes e objetos
  • Atributos de classe
  • Métodos de classe
  • Construtores
  • Modificadores de acesso
  • Encapsulamento
  • Herança
  • Polimorfismo
  • Classes abstratas
  • Interfaces
  • Enums
  • Entrada do usuário
  • Datas
  • ArrayList
  • HashMap
  • Exceções
  • Expressões Lambda

Sobre Diego Pinho

Professor especialista em tecnologia com mais de 10 anos de experiência. Autor de livros técnicos e criador de cursos que já impactaram milhares de estudantes.

Visite meu site principal →

Serviços

  • Área do Aluno
  • Solicite um orçamento
  • Trabalhe Conosco

Redes Sociais

  • Youtube
  • TikTok
  • Instagram
  • LinkedIn

Links

  • Site Institucional
  • Nosso Blog
  • Cursos Online
  • Livros Publicados

Professor Diego Pinho

Educação, Tecnologia e IA © 2026

Discord
JavaHerança
1 min de leitura

Herança

Como usar herança para reaproveitar código entre classes em Java

Herança

Herança permite que uma classe reaproveite atributos e métodos de outra. A classe que herda é chamada de subclasse, e a classe original é chamada de superclasse.

Carregando...

A palavra extends indica que Cachorro herda de Animal. Com isso, Cachorro ganha automaticamente o atributo nome e o método comer(), sem precisar reescrevê-los.

super: acessando a superclasse

A palavra super permite acessar atributos, métodos e o construtor da superclasse.

Carregando...

Sobrescrevendo métodos (override)

Uma subclasse pode redefinir o comportamento de um método herdado, usando a mesma assinatura.

Carregando...

A anotação @Override não é obrigatória, mas é uma boa prática, pois deixa claro que aquele método está substituindo um da superclasse, e ajuda o compilador a apontar erros caso a assinatura não corresponda corretamente.

AnteriorEncapsulamentoPróximo Polimorfismo