Els mètodes són blocs de codi que realitzen una tasca específica i poden ser cridats des de diferents parts del programa. Els mètodes ajuden a organitzar el codi, fer-lo més llegible i reutilitzable. En aquest tema, aprendrem com definir i utilitzar mètodes en Java.
Continguts
Definició de Mètodes
Un mètode en Java es defineix dins d'una classe i té la següent estructura bàsica:
Components d'un Mètode
- Modificadors d'Accés: Defineixen la visibilitat del mètode (public, private, protected).
- Tipus de Retorn: Indica el tipus de valor que el mètode retorna. Si no retorna res, es fa servir
void
. - Nom del Mètode: Identificador únic del mètode.
- Paràmetres: Llista de variables que el mètode accepta com a entrada (opcional).
- Cos del Mètode: Bloc de codi que s'executa quan el mètode és cridat.
Paràmetres i Arguments
Els paràmetres són variables que es defineixen en la signatura del mètode i que reben els valors passats quan el mètode és cridat. Els arguments són els valors reals passats al mètode.
public class MyClass { // Mètode amb paràmetres public void greet(String name) { System.out.println("Hello, " + name); } public static void main(String[] args) { MyClass obj = new MyClass(); // Crida al mètode amb un argument obj.greet("Alice"); } }
Tipus de Retorn
El tipus de retorn d'un mètode indica el tipus de valor que el mètode retorna. Si el mètode no retorna cap valor, es fa servir void
.
public class MyClass { // Mètode que retorna un valor public int add(int a, int b) { return a + b; } public static void main(String[] args) { MyClass obj = new MyClass(); int result = obj.add(5, 3); System.out.println("Result: " + result); } }
Sobrecàrrega de Mètodes
La sobrecàrrega de mètodes permet definir múltiples mètodes amb el mateix nom però amb diferents signatures (nombre o tipus de paràmetres).
public class MyClass { // Sobrecàrrega de mètodes public int add(int a, int b) { return a + b; } public double add(double a, double b) { return a + b; } public static void main(String[] args) { MyClass obj = new MyClass(); System.out.println("Int add: " + obj.add(5, 3)); System.out.println("Double add: " + obj.add(5.5, 3.3)); } }
Exemples Pràctics
Exemple 1: Mètode sense Paràmetres i sense Retorn
public class MyClass { public void printMessage() { System.out.println("Hello, World!"); } public static void main(String[] args) { MyClass obj = new MyClass(); obj.printMessage(); } }
Exemple 2: Mètode amb Paràmetres i amb Retorn
public class MyClass { public int multiply(int a, int b) { return a * b; } public static void main(String[] args) { MyClass obj = new MyClass(); int result = obj.multiply(4, 5); System.out.println("Multiplication Result: " + result); } }
Exercicis
Exercici 1: Crear un Mètode per Calcular l'Àrea d'un Rectangle
Descripció: Escriu un mètode calculateArea
que accepti l'amplada i l'alçada d'un rectangle i retorni la seva àrea.
public class Rectangle { public int calculateArea(int width, int height) { // Escriu el teu codi aquí } public static void main(String[] args) { Rectangle rect = new Rectangle(); int area = rect.calculateArea(5, 7); System.out.println("Area: " + area); } }
Solució:
public class Rectangle { public int calculateArea(int width, int height) { return width * height; } public static void main(String[] args) { Rectangle rect = new Rectangle(); int area = rect.calculateArea(5, 7); System.out.println("Area: " + area); } }
Exercici 2: Crear un Mètode per Determinar si un Nombre és Parell
Descripció: Escriu un mètode isEven
que accepti un nombre enter i retorni true
si el nombre és parell i false
si és imparell.
public class NumberCheck { public boolean isEven(int number) { // Escriu el teu codi aquí } public static void main(String[] args) { NumberCheck check = new NumberCheck(); boolean result = check.isEven(4); System.out.println("Is 4 even? " + result); } }
Solució:
public class NumberCheck { public boolean isEven(int number) { return number % 2 == 0; } public static void main(String[] args) { NumberCheck check = new NumberCheck(); boolean result = check.isEven(4); System.out.println("Is 4 even? " + result); } }
Conclusió
En aquest tema, hem après com definir i utilitzar mètodes en Java. Hem vist com passar paràmetres, retornar valors i sobrecarregar mètodes. Els mètodes són una eina fonamental per organitzar i reutilitzar el codi, i són essencials per escriure programes eficients i mantenibles. A continuació, passarem a estudiar els constructors, que són una part important de la creació d'objectes en Java.
Curs de Programació en Java
Mòdul 1: Introducció a Java
- Introducció a Java
- Configuració de l'Entorn de Desenvolupament
- Sintaxi i Estructura Bàsica
- Variables i Tipus de Dades
- Operadors
Mòdul 2: Flux de Control
Mòdul 3: Programació Orientada a Objectes
- Introducció a la POO
- Classes i Objectes
- Mètodes
- Constructors
- Herència
- Polimorfisme
- Encapsulació
- Abstracció
Mòdul 4: Programació Orientada a Objectes Avançada
Mòdul 5: Estructures de Dades i Col·leccions
Mòdul 6: Gestió d'Excepcions
Mòdul 7: Entrada/Sortida de Fitxers
- Lectura de Fitxers
- Escriptura de Fitxers
- Fluxos de Fitxers
- BufferedReader i BufferedWriter
- Serialització
Mòdul 8: Multithreading i Concurrència
- Introducció al Multithreading
- Creació de Fils
- Cicle de Vida dels Fils
- Sincronització
- Utilitats de Concurrència
Mòdul 9: Xarxes
- Introducció a les Xarxes
- Sockets
- ServerSocket
- DatagramSocket i DatagramPacket
- URL i HttpURLConnection