Resumo : neste tutorial, você aprenderá sobre os métodos estáticos do C# e como usá-los de maneira eficaz.
Introdução aos métodos estáticos C#
Para definir um método estático, você usa a static
palavra-chave com a seguinte sintaxe:
class MyClass
{
public static type MyStaticMethod(parameters)
{
//
}
}
Linguagem de código: PHP ( php )
Nesta sintaxe, a static
palavra-chave indica que MyStaticMethod
é um método estático.
Assim como os campos estáticos , os métodos estáticos estão vinculados a uma classe . Eles não estão vinculados a nenhuma instância da classe. Portanto, os métodos estáticos não podem acessar membros da instância. No entanto, eles podem acessar outros membros estáticos.
Para chamar um método estático dentro da classe, você usa o nome do método estático:
MyStaticMethod(arguments);
Linguagem de código: JavaScript ( javascript )
Para chamar um método estático fora da classe, você usa esta sintaxe:
ClassName.MyStaticMethod();
Linguagem de código: CSS ( css )
Na prática, você usa métodos estáticos definidos em uma classe de utilitário.
Exemplos de métodos estáticos em C#
Vejamos o exemplo do uso do método estático.
Primeiro, defina a UnitConverter
classe que possui dois métodos estáticos:
class UnitConverter
{
public static double KgToLbs(double weight) => weight * 2.20462262185;
public static double LbsToKg(double weight) => weight * 0.45359237;
}
Linguagem de código: PHP ( php )
O KgToLbs
converte o peso de quilograma em libra e o LbsToKg
método converte o peso de libra em quilograma.
Segundo, chame o KgToLbs()
método estático para converter o peso de quilograma em libra:
// Program.cs
// kg -> pound
double weight = UnitConverter.KgToLbs(100);
Console.WriteLine($"100kg={weight:#.00}lbs");
// pound -> kg
weight = UnitConverter.LbsToKg(100);
Console.WriteLine($"100lbs={weight:#.00}kg");
Linguagem de código: JavaScript ( javascript )
Saída:
100kg = 220.46lbs
100lbs = 45.36kg
Resumo
- Os métodos estáticos estão vinculados a classes, não a instâncias de classes.
- Agrupe métodos estáticos relacionados em uma classe de utilitário.