Documente Academic
Documente Profesional
Documente Cultură
Neste artigo
Exemplo
Exemplo
Especificao da Linguagem C#
Consulte tambm
O modificador abstract indica que o item que est sendo modificado tem uma
implementao ausente ou incompleta. O modificador abstrato pode ser usado com classes,
mtodos, propriedades, indexadores e eventos. Use o modificador abstract em uma
declarao de classe para indicar que uma classe destina-se apenas a ser uma classe base de
outras classes. Membros marcados como abstratos ou includos em uma classe abstrata,
devem ser implementados por classes que derivam da classe abstrata.
Exemplo
Neste exemplo, a classe Square deve fornecer uma implementao de Area porque deriva
de ShapesClass :
C# Copiar
public Square(int n)
{
side = n;
}
// Area method is required to avoid
// a compile-time error.
public override int Area()
{
return side * side;
}
https://docs.microsoft.com/pt-br/dotnet/csharp/language-reference/keywords/abstract 1/4
19/09/2017 abstract (Referncia de C#) | Microsoft Docs
{
Square sq = new Square(12);
Console.WriteLine("Area of the square = {0}", sq.Area());
}
interface I
{
void M();
}
abstract class C : I
{
public abstract void M();
}
}
// Output: Area of the square = 144
Copiar
https://docs.microsoft.com/pt-br/dotnet/csharp/language-reference/keywords/abstract 2/4
19/09/2017 abstract (Referncia de C#) | Microsoft Docs
Uma propriedade herdada abstrata pode ser substituda em uma classe derivada
incluindo uma declarao de propriedade que usa o modificador override.
Para obter mais informaes sobre classes abstratas, consulte Classes e membros de classes
abstratos e lacrados.
Uma classe abstrata deve fornecer uma implementao para todos os membros de interface.
Uma classe abstrata que implementa uma interface pode mapear os mtodos de interface
em mtodos abstratos. Por exemplo:
C# Copiar
interface I
{
void M();
}
abstract class C : I
{
public abstract void M();
}
Exemplo
Nesse exemplo, a classe DerivedClass derivada de uma classe abstrata BaseClass . A
classe abstrata contm um mtodo abstrato, AbstractMethod e duas propriedades abstratas,
X e Y .
C# Copiar
No exemplo anterior, se voc tentar instanciar a classe abstrata usando uma instruo como
esta:
Copiar
voc receber uma mensagem de erro informando que o compilador no pode criar uma
instncia da classe abstrata 'BaseClass'.
Especificao da Linguagem C#
https://docs.microsoft.com/pt-br/dotnet/csharp/language-reference/keywords/abstract 4/4