Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Sobrecarga do método C#

Sobrecarga do método C#


Neste artigo, você aprenderá sobre sobrecarga de métodos em C# com a ajuda de exemplos.

Em C#, pode haver dois ou mais métodos em uma classe com o mesmo nome, mas diferentes números, tipos e ordem de parâmetros, é chamado de sobrecarga de método. Por exemplo:

void display() { ... }
void display(int a) { ... }
float display(double a) { ... }
float display(int a, float b) { ... }

Aqui, o display() método está sobrecarregado. Esses métodos têm o mesmo nome, mas aceitam argumentos diferentes.

Observação :Os tipos de retorno dos métodos acima não são os mesmos. Isso ocorre porque a sobrecarga de métodos não está associada a tipos de retorno. Métodos sobrecarregados podem ter tipos de retorno iguais ou diferentes, mas devem ter parâmetros diferentes.


Podemos executar a sobrecarga de métodos das seguintes maneiras:

1. Ao alterar o número de parâmetros


Podemos sobrecarregar o método se o número de parâmetros nos métodos for diferente.
void display(int a) {
  ...
} 
...
void display(int a, int b) {
  ...
} 

Aqui, temos dois métodos em uma classe com o mesmo nome - display() . É possível ter mais de um método com o mesmo nome porque o número de parâmetros nos métodos é diferente. Por exemplo,
using System;

namespace MethodOverload {

  class Program {  

    // method with one parameter
    void display(int a) {
      Console.WriteLine("Arguments: " + a);
    }
 
    // method with two parameters
    void display(int a, int b) {
      Console.WriteLine("Arguments: " + a + " and " + b);
    } 
    static void Main(string[] args) {

      Program p1 = new Program();
      p1.display(100);
      p1.display(100, 200);
      Console.ReadLine();
    }
  }
}

Saída
Arguments: 100
Arguments: 100 and 200

No exemplo acima, sobrecarregamos o display() método:

Com base no número do argumento passado durante a chamada do método, o método correspondente é chamado.

2. Alterando os tipos de dados dos parâmetros

void display(int a) {
  ...
} 
...
void display(string b) {
  ...
} 

Aqui, temos dois métodos - display() com o mesmo número de parâmetros. É possível ter mais de um display() método com o mesmo número de parâmetros porque o tipo de dados dos parâmetros nos métodos é diferente. Por exemplo,
using System;

namespace MethodOverload {

  class Program {  

    // method with int parameter
    void display(int a) {
      Console.WriteLine("int type: " + a);
    } 

    // method with string parameter
    void display(string b) {
      Console.WriteLine("string type: " + b);
    } 
    static void Main(string[] args) {

      Program p1 = new Program();
      p1.display(100);
      p1.display("Programiz");
      Console.ReadLine();
    }
  }
}



Saída
int type: 100
string type: Programiz

No programa acima, sobrecarregamos o display() método com diferentes tipos de parâmetros.

Com base no tipo de argumentos passados ​​durante a chamada do método, o método correspondente é chamado.

3. Alterando a ordem dos parâmetros

void display(int a, string b) {
  ...
} 
...
void display(string b, int a) {
  ...
}

Aqui, temos dois métodos - display() . É possível ter mais de um display() método com o mesmo número e tipo de parâmetro porque a ordem do tipo de dados dos parâmetros nos métodos é diferente. Por exemplo,
using System;

namespace MethodOverload {

  class Program {  

    // method with int and string parameters 
    void display(int a, string b) {
      Console.WriteLine("int: " + a);
      Console.WriteLine("string: " + b);
    } 

    // method with string andint parameter
    void display(string b, int a) {
      Console.WriteLine("string: " + b);
      Console.WriteLine("int: " + a);
    } 
    static void Main(string[] args) {

      Program p1 = new Program();
      p1.display(100, "Programming");
      p1.display("Programiz", 400);
      Console.ReadLine();
    }
  }
}

Saída
int: 100
string: Programming
string: Programiz
int: 400

No programa acima, sobrecarregamos o display() com diferentes ordens de parâmetros.

Com base na ordem dos argumentos passados ​​durante a chamada do método, o método correspondente é chamado.

Linguagem C

  1. Classe abstrata e método C#
  2. C# Classe Parcial e Método Parcial
  3. Classe e método selados em C#
  4. Sobrecarga do construtor C#
  5. Sobrecarga do Operador Python
  6. Tarefa Verilog
  7. Tarefas de Exibição Verilog
  8. C# - Métodos
  9. C# - Sobrecarga do Operador
  10. C# - Métodos Anônimos