? Na programação C + + , uma classe é uma estrutura de dados que define um conjunto de propriedades que podem incluir tanto os dados e funções. A herança permite um tipo de classe , chamada de classe derivada, para ter algumas ou todas as suas propriedades definidas por uma outra classe, a classe de base . Existem quatro tipos principais de relacionamento de herança em C + + : único, múltiplo , hierárquico e de vários níveis , embora estes podem ser combinados em um quinto tipo chamado de herança híbrido. Herança Simples
Herança simples é a forma mais simples de estrutura de herança entre as classes C + +. Em uma hierarquia de herança simples , uma classe derivada herda as propriedades de uma classe base. Esta é uma relação direta , em que a classe derivada representa um subconjunto da classe base. Um exemplo em que a herança só pode ser utilizado está com uma classe base chamada Livro, segurando o título de um livro , gênero, etc Uma classe derivada poderia existir chamado LibraryBook , que pode ser definido como um livro com a propriedade adicional de uma data de vencimento.
herança múltipla
herança múltipla é um tipo um pouco mais avançado de herança em que uma classe derivada deriva propriedades de duas ou mais classes base. Por exemplo, a classe chamada Pessoa poderia ser definido para manter o nome da pessoa , data de nascimento , etc, e outra classe chamada Empregado pode ser definida para manter o salário de um empregado , empregador, pacote de benefícios , etc Uma classe derivada chamada WebDesigner poderia desenhar propriedades , tanto da pessoa e classes base dos empregados para armazenar informações biográficas e de emprego sobre web designers.
hierárquica herança
herança hierárquica é o oposto de múltipla herança. Em vez de uma classe derivada de desenho em múltiplas classes base , uma classe base fornece propriedades para várias classes derivadas . Um exemplo de onde a herança hierárquica poderia ser usado é um programa de rastreamento de estatísticas esportivas . A classe base chamada Player pode armazenar o nome , a idade , a equipe de um jogador, etc Classes derivadas chamados BaseballPitcher , BaseballShortstop , FootballLineman , etc tudo poderia derivar as propriedades básicas de um jogador da classe base e cada adicionar um conjunto diferente de propriedades para acompanhar as estatísticas relevantes para que o desporto e posição.
multinível herança
multinível herança, como o próprio nome sugere , consiste de uma hierarquia de herança , que ocorre quando uma classe herda as propriedades de outra classe que é em si uma classe de derivado de uma terceira classe . Por exemplo, uma classe base chamada Livro poderia ter propriedades que armazenam o título , editora, etc de um livro. A LibraryBook classe derivada poderia derivar propriedades do livro ao adicionar novas propriedades , como data de vencimento. Uma classe ChildrensSection , por sua vez , poderia derivar propriedades de LibraryBook ao adicionar propriedades específicas para um livro da seção infantil , como ilustrador .