Método parcial (C# Reference)
Um método parcial tem sua assinatura definida em uma parte de um tipo parcial e sua implementação definida em outra parte do tipo. Os métodos parciais permitem que os designers de classe forneçam ganchos de método, semelhantes a manipuladores de eventos, que os desenvolvedores podem decidir implementar ou não. Se o desenvolvedor não fornecer uma implementação, o compilador removerá a assinatura no tempo de compilação. As seguintes condições são aplicáveis a métodos parciais:
As declarações devem começar com a palavra-chave contextual partial.
As assinaturas em ambas as partes do tipo parcial devem ser correspondentes.
A palavra-chave partial
não é permitida em construtores, finalizadores, operadores sobrecarregados, declarações de propriedade ou declarações de evento.
Um método parcial não precisa ter uma implementação nos seguintes casos:
Ele não tem modificadores de acessibilidade (incluindo o private padrão).
Ele retorna void.
Ele não tem parâmetros out.
Ele não tem nenhum dos seguintes modificadores virtual, override, sealed, new ou extern.
Qualquer método que não esteja em conformidade com todas essas restrições (por exemplo, método public virtual partial void
), deve fornecer uma implementação.
O exemplo a seguir mostra um método parcial definido em duas partes de uma classe parcial:
namespace PM
{
partial class A
{
partial void OnSomethingHappened(string s);
}
// This part can be in a separate file.
partial class A
{
// Comment out this method and the program
// will still compile.
partial void OnSomethingHappened(String s)
{
Console.WriteLine("Something happened: {0}", s);
}
}
}
Métodos parciais também podem ser úteis em combinação com geradores de origem. Por exemplo, uma expressão regular pode ser definida usando o seguinte padrão:
[GeneratedRegex("(dog|cat|fish)")]
partial bool IsPetMatch(string input);
Para obter mais informações, consulte Classes parciais e métodos.
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de