Inherits StatementInherits Statement

Hace que la clase o interfaz actual herede los atributos, variables, propiedades, procedimientos y eventos de otra clase o conjunto de interfaces.Causes the current class or interface to inherit the attributes, variables, properties, procedures, and events from another class or set of interfaces.

SintaxisSyntax

Inherits basetypenames  

ElementosParts

TérminoTerm DefiniciónDefinition
basetypenames Obligatorio.Required. El nombre de la clase del que se deriva esta clase.The name of the class from which this class derives.

-o bien--or-

Los nombres de las interfaces que esta interfaz se deriva.The names of the interfaces from which this interface derives. Use comas para separar varios nombres.Use commas to separate multiple names.

ComentariosRemarks

Si usa, la Inherits instrucción debe ser la primera línea no vacía, sin comentarios en una definición de clase o interfaz.If used, the Inherits statement must be the first non-blank, non-comment line in a class or interface definition. Debe seguir inmediatamente a la Class o Interface instrucción.It should immediately follow the Class or Interface statement.

Puede usar Inherits solo en una clase o interfaz.You can use Inherits only in a class or interface. Esto significa que el contexto de declaración de una herencia no puede ser un archivo de código fuente, espacio de nombres, estructura, módulo, procedimiento o bloque.This means the declaration context for an inheritance cannot be a source file, namespace, structure, module, procedure, or block.

ReglasRules

  • Herencia de clases.Class Inheritance. Si una clase utiliza la Inherits instrucción, puede especificar sólo una clase base.If a class uses the Inherits statement, you can specify only one base class.

    Una clase no puede heredar de una clase anidada dentro de él.A class cannot inherit from a class nested within it.

  • Herencia de interfaz.Interface Inheritance. Si usa una interfaz el Inherits instrucción, puede especificar una o varias interfaces bases.If an interface uses the Inherits statement, you can specify one or more base interfaces. Puede heredar de dos interfaces incluso si cada uno de ellos define un miembro con el mismo nombre.You can inherit from two interfaces even if they each define a member with the same name. Si lo hace, el código de implementación debe utilizar la calificación de nombres para especificar qué miembro se implementa.If you do so, the implementing code must use name qualification to specify which member it is implementing.

    Una interfaz no puede heredar de otra interfaz con un nivel de acceso más restrictivo.An interface cannot inherit from another interface with a more restrictive access level. Por ejemplo, un Public interfaz no puede heredar de un Friend interfaz.For example, a Public interface cannot inherit from a Friend interface.

    Una interfaz no puede heredar de una interfaz anidada dentro de él.An interface cannot inherit from an interface nested within it.

Un ejemplo de herencia de clases en .NET Framework es la ArgumentException (clase), que hereda de la SystemException clase.An example of class inheritance in the .NET Framework is the ArgumentException class, which inherits from the SystemException class. Esto proporciona a ArgumentException todas las propiedades predefinidas y los procedimientos requeridos por las excepciones del sistema, como el Message propiedad y el ToString método.This provides to ArgumentException all the predefined properties and procedures required by system exceptions, such as the Message property and the ToString method.

Un ejemplo de herencia de interfaz de .NET Framework es la ICollection interfaz, que hereda de la IEnumerable interfaz.An example of interface inheritance in the .NET Framework is the ICollection interface, which inherits from the IEnumerable interface. Esto hace que ICollection para heredar la definición del enumerador necesario para recorrer una colección.This causes ICollection to inherit the definition of the enumerator required to traverse a collection.

EjemploExample

En el ejemplo siguiente se usa el Inherits instrucción para mostrar cómo una clase denominada thisClass puede heredar todos los miembros de una clase base denominada anotherClass.The following example uses the Inherits statement to show how a class named thisClass can inherit all the members of a base class named 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

EjemploExample

El ejemplo siguiente muestra la herencia de varias interfaces.The following example shows inheritance of multiple interfaces.

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

La interfaz denominada thisInterface ahora incluye todas las definiciones en el IComparable, IDisposable, y IFormattable interfaces de los miembros heredados proporcionan respectivamente para la comparación específico del tipo de dos objetos, liberar recursos asignan y se expresa el valor de un objeto como un String.The interface named thisInterface now includes all the definitions in the IComparable, IDisposable, and IFormattable interfaces The inherited members provide respectively for type-specific comparison of two objects, releasing allocated resources, and expressing the value of an object as a String. Una clase que implementa thisInterface debe implementar todos los miembros de todas las interfaces base.A class that implements thisInterface must implement every member of every base interface.

Vea tambiénSee also