Métodos
Parte de la sección Programación Orientada a Objetos del Journey de Java de Coddy — lección 5 de 87.
Los métodos definen acciones que un objeto puede realizar. Tienen un tipo de retorno, un nombre y parámetros opcionales.
Método sin parámetros
public class Greeter {
public String sayHello() {
return "Hello!";
}
}Método con parámetros y tipo de retorno
public class Calculator {
public int add(int a, int b) {
return a + b;
}
}Método void (sin valor de retorno)
public class Printer {
public void printMessage(String msg) {
System.out.println(msg);
}
}Llamada a métodos
Calculator calc = new Calculator();
int result = calc.add(5, 3);
System.out.println(result); // Salida: 8El tipo de retorno le indica a Java qué tipo de datos devuelve el método. Usa void cuando un método realiza una acción pero no devuelve datos.
Desafío
IntermedioCrea cuatro métodos en la clase StringHelper:
toUpperCase()— devuelve el texto en mayúsculasgetLength()— devuelve la longitud del textocontains(String word)— devuelve true si el texto contiene la palabrarepeat(int times)— devuelve el texto repetido con espacios
Hoja de referencia
Los métodos definen acciones que un objeto puede realizar. Tienen un tipo de retorno, un nombre y parámetros opcionales.
Método sin parámetros:
public class Greeter {
public String sayHello() {
return "Hello!";
}
}Método con parámetros y tipo de retorno:
public class Calculator {
public int add(int a, int b) {
return a + b;
}
}Método void (sin valor de retorno):
public class Printer {
public void printMessage(String msg) {
System.out.println(msg);
}
}Llamada a métodos:
Calculator calc = new Calculator();
int result = calc.add(5, 3);
System.out.println(result); // Salida: 8El tipo de retorno le indica a Java qué tipo de datos devuelve el método. Use void cuando un método realiza una acción pero no devuelve datos.
Pruébalo tú mismo
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
StringHelper helper = new StringHelper(input);
System.out.println("Original: " + input);
System.out.println("Uppercase: " + helper.toUpperCase());
System.out.println("Length: " + helper.getLength());
System.out.println("Contains 'World': " + helper.contains("World"));
System.out.println("Repeated: " + helper.repeat(3));
}
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Programación Orientada a Objetos
1Fundamentos de OOP
Archivos externosIntroducción a la OOPClases vs. ObjetosLa palabra clave thisMétodosCampos (Atributos)Método constructorSobrecarga de constructoresResumen - Calculadora simple4Herencia
Herencia básica (extends)La palabra clave superSobrescritura de métodos (@Override)Encadenamiento de constructoresLa clase ObjectHerencia simple y multinivelPor qué no hay herencia múltiple de clasesResumen - Jerarquía de empleados7Métodos especiales y la clase Object
Método toString()equals() y hashCode()Método clone()compareTo() y ComparableInterfaz ComparatorResumen - Ordenamiento personalizado2Modificadores de acceso y encapsulamiento
Visión general de los niveles de accesoMétodos Getter y SetterOcultamiento de informaciónLa palabra clave finalResumen - Gestor de cuentas bancarias5Polimorfismo
Fundamentos de sobrecarga de métodosSobrescritura de métodos (tiempo de ejecución)Upcasting y DowncastingEl operador instanceofClases y métodos abstractosResumen - Calculadora de figuras8Conceptos avanzados de POO
Composición vs. HerenciaAgregación vs. ComposiciónClases internas, anidadas y anónimasEnums y métodos de EnumRecords (Java 16+)Clases selladas (Java 17+)11Patrones de diseño - Parte 1
Introducción a los patrones de diseñoPatrón SingletonPatrón FactoryPatrón BuilderPatrón ObserverPatrón Strategy3Propiedades de clase y miembros estáticos
Variables de instancia vs. estáticasMétodos estáticosBloques estáticosConstantes (static final)Repaso - Contador y utilidad6Interfaces y Clases Abstractas
Introducción a las InterfacesImplementación de InterfacesImplementación de Múltiples InterfacesMétodos Default y Static en InterfacesClases Abstractas vs InterfacesInterfaces FuncionalesResumen - Sistema de Pagos9Genéricos
Introducción a los genéricosClases genéricasMétodos genéricosParámetros de tipo delimitadosComodines (?, extends, super)Resumen - Contenedor genérico12Patrones de diseño Parte 2
Patrón CommandPatrón AdapterPatrón DecoratorPatrón Template MethodPatrón StatePatrón CompositePatrón Iterator