Métodos e Parâmetros
Parte da seção Programação Orientada a Objetos do Journey de C# da Coddy — lição 5 de 70.
Métodos definem ações que um objeto pode realizar. Parâmetros permitem que você passe dados para os métodos, e tipos de retorno especificam quais dados retornam.
Defina um método com parâmetros e um tipo de retorno
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}Método com múltiplos parâmetros
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
public double Multiply(double x, double y)
{
return x * y;
}
}Método sem valor de retorno (void)
public class Printer
{
public void PrintMessage(string message)
{
Console.WriteLine(message);
}
}Chamando métodos com argumentos
Calculator calc = new Calculator();
int result = calc.Add(5, 3);
Console.WriteLine(result); // Saída: 8
double product = calc.Multiply(2.5, 4.0);
Console.WriteLine(product); // Saída: 10Método com parâmetro string e retorno
public class Greeter
{
public string CreateGreeting(string name)
{
return $"Hello, {name}!";
}
}
Greeter greeter = new Greeter();
string message = greeter.CreateGreeting("Alice");
Console.WriteLine(message); // Saída: Hello, Alice!Parâmetros são variáveis que recebem valores quando o método é chamado. O tipo de retorno (como int, string ou void) especifica que tipo de dado o método devolve. Use void quando um método não retorna nada.
Desafio
MédioCrie três métodos na classe Calculator:
Add- recebe dois inteiros e retorna a soma delesSubtract- recebe dois inteiros e retorna a diferença entre eles (primeiro - segundo)Multiply- recebe dois inteiros e retorna o produto deles
Folha de consulta
Métodos definem ações que um objeto pode realizar. Parâmetros permitem que você passe dados para os métodos, e os tipos de retorno especificam quais dados retornam.
Defina um método com parâmetros e um tipo de retorno:
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}Método sem valor de retorno (void):
public class Printer
{
public void PrintMessage(string message)
{
Console.WriteLine(message);
}
}Chamando métodos com argumentos:
Calculator calc = new Calculator();
int result = calc.Add(5, 3);
Console.WriteLine(result); // Saída: 8Método com parâmetro string e retorno:
public class Greeter
{
public string CreateGreeting(string name)
{
return $"Hello, {name}!";
}
}Parâmetros são variáveis que recebem valores quando o método é chamado. O tipo de retorno (como int, string ou void) especifica que tipo de dado o método devolve. Use void quando um método não retorna nada.
Experimente você mesmo
using System;
class Program
{
static void Main()
{
int num1 = int.Parse(Console.ReadLine());
int num2 = int.Parse(Console.ReadLine());
Calculator calc = new Calculator();
Console.WriteLine($"Add: {calc.Add(num1, num2)}");
Console.WriteLine($"Subtract: {calc.Subtract(num1, num2)}");
Console.WriteLine($"Multiply: {calc.Multiply(num1, num2)}");
}
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Programação Orientada a Objetos
1Fundamentos de POO
Arquivos ExternosNamespaces e DiretivasIntrodução a Classes e ObjetosA Palavra-chave 'this'Métodos e ParâmetrosCampos vs PropriedadesConstrutoresInicializadores de ObjetosRecapitulação - Calculadora Simples4Herança
Sintaxe Básica de Herança (:)A Palavra-chave 'base'Palavras-chave Virtual e OverrideClasses SeladasA Classe Base 'object'Recapitulação - Hierarquia de Funcionários7Recursos Avançados
Sobrecarga de OperadoresIndexadores (this[])Sobrescrita de ToString()Métodos de ExtensãoRecapitulação - Lista Personalizada10Padrões de Projeto Parte 1
Introdução aos Padrões de ProjetoSingleton Thread-SafePadrão FactoryPadrão Observer (Eventos)Padrão Strategy2Propriedades e Membros Estáticos
Propriedades AutoimplementadasPropriedades de Apenas Leitura/EscritaCampos e Métodos EstáticosClasses EstáticasMembros com Corpo de Expressão5Polimorfismo e Interfaces
Polimorfismo: Compilação vs ExecuçãoInterface vs Classe AbstrataMúltiplas InterfacesInterfaces ExplícitasUpcasting e DowncastingRecapitulação - Calculadora de Formas8Conceitos Avançados de POO
Composição sobre HerançaGenerics (Classes e Métodos)Delegates e EventosAtributos e ReflectionIDisposable e a Instrução usingFundamentos de Injeção de Dependência11Padrões de Projeto Parte 2
Padrão CommandPadrão AdapterPadrão DecoratorPadrão Template MethodPadrão StatePadrão Composite3Arquitetura de Classes
Dados de Instância vs EstáticosPalavras-chave 'readonly' e 'const'Campos de SuporteRecapitulação - Gerenciador de Conta Bancária6Encapsulamento
Modificadores de AcessoPropriedades para EncapsulamentoImplementação de Ocultação de DadosPadrões de ImutabilidadeRecapitulação - Registros de Estudantes9Argumentos Variáveis
A Palavra-chave 'params'Parâmetros OpcionaisArgumentos NomeadosSobrecarga de Métodos