Compartilhar via


Instrução Inherits

Faz com que a classe ou interface atual herda os atributos, variáveis, propriedades, procedimentos e eventos de outra classe ou conjunto de interfaces.

Sintaxe

Inherits basetypenames  

Partes

Prazo Definição
basetypenames Obrigatório O nome da classe da qual essa classe deriva.

- ou -

Os nomes das interfaces das quais essa interface deriva. Use vírgulas para separar vários nomes.

Observações

Se usada, a Inherits instrução deve ser a primeira linha não em branco, sem comentários, em uma definição de classe ou interface. Ele deve seguir imediatamente a instrução ou Interface a Class instrução.

Você só pode usar Inherits em uma classe ou interface. Isso significa que o contexto de declaração de uma herança não pode ser um arquivo de origem, namespace, estrutura, módulo, procedimento ou bloco.

Regras

  • Herança de classe. Se uma classe usar a Inherits instrução, você poderá especificar apenas uma classe base.

    Uma classe não pode herdar de uma classe aninhada dentro dela.

  • Herança de interface. Se uma interface usar a Inherits instrução, você poderá especificar uma ou mais interfaces base. Você pode herdar de duas interfaces mesmo que elas definam um membro com o mesmo nome. Se você fizer isso, o código de implementação deverá usar a qualificação de nome para especificar qual membro ele está implementando.

    Uma interface não pode herdar de outra interface com um nível de acesso mais restritivo. Por exemplo, uma Public interface não pode herdar de uma Friend interface.

    Uma interface não pode herdar de uma interface aninhada dentro dela.

Um exemplo de herança de classe no .NET Framework é a ArgumentException classe, que herda da SystemException classe. Isso fornece todas ArgumentException as propriedades e procedimentos predefinidos exigidos por exceções do sistema, como a Message propriedade e o ToString método.

Um exemplo de herança de interface no .NET Framework é a ICollection interface, que herda da IEnumerable interface. Isso faz com que ICollection a definição do enumerador seja herdada necessária para percorrer uma coleção.

Exemplo 1

O exemplo a seguir usa a Inherits instrução para mostrar como uma classe nomeada thisClass pode herdar todos os membros de uma classe base chamada anotherClass.

Public Class thisClass
    Inherits anotherClass
    ' Add code to override, overload, or extend members
    ' inherited from the base class.
    ' Add new variable, property, procedure, and event declarations.
End Class

Exemplo 2

O exemplo a seguir mostra a herança de várias interfaces.

Public Interface thisInterface
    Inherits IComparable, IDisposable, IFormattable
    ' Add new property, procedure, and event definitions.
End Interface

A interface nomeada thisInterface agora inclui todas as definições no IComparable, IDisposablee IFormattable interfaces que os membros herdados fornecem respectivamente para comparação específica de tipo de dois objetos, liberando recursos alocados e expressando o valor de um objeto como um String. Uma classe que implementa thisInterface deve implementar cada membro de cada interface base.

Consulte também