Métodos en C# explicados: Declaración, llamada, parámetros, tipos de retorno y más
Métodos en C# explicados
Domina los fundamentos de los métodos en C# —cómo declararlos, invocarlos, manejar parámetros, valores de retorno y aprovechar funcionalidad integrada— con ejemplos claros.
Un método es un bloque de código reutilizable que realiza una tarea específica. Por ejemplo, si estás construyendo un programa de dibujo que necesita crear y colorear un círculo, podrías dividir el trabajo en dos métodos distintos: uno para dibujar el círculo y otro para colorearlo. Este enfoque modular mejora la legibilidad, testabilidad y reutilización.
Declarando un método en C#
La sintaxis básica para definir un método en C# es:
returnType methodName() {
// cuerpo del método
}
Componentes:
- returnType – Especifica el tipo de dato devuelto por el método. Si no se devuelve valor, usa
void. - methodName – Un identificador usado para referenciar el método.
- cuerpo del método – Las sentencias que se ejecutan cuando el método corre, encerradas entre llaves.
Ejemplo:
void display() {
// código
}
Aquí, display() es el nombre del método y void indica que no devuelve valor.
Llamando a un método en C#
Una vez declarado, invocas un método por su nombre seguido de paréntesis. Para el ejemplo display():
// llama al método
display();

Ejemplo práctico: Usando un método
using System;
namespace MethodDemo {
class Program {
// Declaración del método
public void Display() {
Console.WriteLine("Hello World");
}
static void Main(string[] args) {
// Crea una instancia de Program
Program p1 = new Program();
// Invoca el método Display
p1.Display();
Console.ReadLine();
}
}
}
Salida
Hello World
Esto demuestra crear un objeto p1 de la clase Program y llamar a su método Display().
Tipos de retorno de métodos
Los métodos pueden devolver datos o ser void. Cuando se requiere un valor de retorno, la sentencia return envía el valor de vuelta al llamador, y el tipo de retorno del método debe coincidir con el tipo del valor.
int AddNumbers() {
int sum = 5 + 14;
return sum;
}
Ejemplo: Devolviendo un entero
using System;
namespace MethodDemo {
class Program {
// Método estático con tipo de retorno
static int AddNumbers() {
int sum = 5 + 14;
return sum;
}
static void Main(string[] args) {
int sum = AddNumbers();
Console.WriteLine(sum);
Console.ReadLine();
}
}
}
Salida
19
Nota que los métodos static pertenecen a la clase misma, por lo que no se requiere instancia para llamarlos.
Métodos con parámetros
Los parámetros permiten a los métodos aceptar valores de entrada. Se declaran en la firma del método y se pasan durante la invocación.
int AddNumber(int a, int b) {
return a + b;
}
Llamando al método con argumentos:
AddNumber(100, 100);

Ejemplo 1: Sumando dos números
using System;
namespace MethodDemo {
class Program {
int AddNumber(int a, int b) {
return a + b;
}
static void Main(string[] args) {
Program p1 = new Program();
int sum = p1.AddNumber(100, 100);
Console.WriteLine("Sum: " + sum);
Console.ReadLine();
}
}
}
Salida
Sum: 200
Ejemplo 2: Método con un parámetro
using System;
namespace MethodDemo {
class Program {
string Work(string task) {
return task;
}
static void Main(string[] args) {
Program p1 = new Program();
string result = p1.Work("Cleaning");
Console.WriteLine("Work: " + result);
Console.ReadLine();
}
}
}
Salida
Work: Cleaning
Métodos integrados (Built-in)
Más allá de los métodos definidos por el usuario, C# ofrece una rica biblioteca de métodos integrados. Por ejemplo:
Math.Sqrt()– Calcula la raíz cuadrada.string.ToUpper()– Convierte una cadena a mayúsculas.
Ejemplo: Usando Math.Sqrt
using System;
namespace MethodDemo {
class Program {
static void Main(string[] args) {
double result = Math.Sqrt(9);
Console.WriteLine("Square root of 9: " + result);
}
}
}
Salida
Square root of 9: 3
Aquí, Math.Sqrt es parte de la clase System.Math en .NET, documentada por Microsoft.
Aprende más sobre métodos integrados en C#.
Sobrecarga de métodos
C# permite múltiples métodos con el mismo nombre, siempre que sus listas de parámetros difieran. Esto se llama sobrecarga de métodos.
using System;
namespace MethodOverloadDemo {
class Program {
// Sobrecarga de un parámetro
void Display(int a) {
Console.WriteLine("Arguments: " + a);
}
// Sobrecarga de dos parámetros
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();
}
}
}
Salida
Arguments: 100 Arguments: 100 and 200
La sobrecarga mejora la legibilidad y flexibilidad. Para más detalles, vea Sobrecarga de métodos en C#.
Lenguaje C
- Inspección Avanzada por Rayos X para Placas de Circuito de Alta Precisión
- Dominando clases y métodos abstractos en C#: Guía práctica
- Entendiendo clases y métodos parciales en C#
- Dominando clases y métodos sealed en C#: Cuándo usarlos, ejemplos claros y mejora de seguridad y rendimiento
- Dominando la Sobrecarga de Métodos en C#: Conceptos, Ejemplos y Buenas Prácticas
- Métodos en C#: Definición, llamada y uso de funciones
- Métodos anónimos en C#: Simplificando el uso de delegados
- Tipos de anotaciones en Java: Guía completa de predefinidas, personalizadas y meta‑anotaciones
- Entendiendo Java String.charAt(): Sintaxis, tipo de retorno, excepciones y ejemplo práctico
- Sobrescritura de Métodos en Java: Personalizando el Comportamiento de la Superclase
- Dominar Referencias a Métodos en Java 8: Guía Completa