Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Paso por Valor en Java | Sección
Conceptos Esenciales de Java

bookPaso por Valor en Java

Desliza para mostrar el menú

Comprensión del paso por valor en Java

En Java, todos los argumentos de los métodos se pasan por valor. Esto significa que cuando se pasa una variable a un método, Java copia el valor de esa variable y envía la copia al método. El método entonces trabaja con esta copia, no con la variable original de tu código.

  • Cuando se pasa un tipo primitivo (como int, double o boolean), el método recibe una copia del valor real. Cualquier cambio realizado en el parámetro dentro del método no afecta a la variable original fuera del método;
  • Cuando se pasa una referencia a un objeto (como un arreglo o una clase personalizada), Java sigue pasando el valor de la referencia (la dirección de memoria). El método recibe una copia de esta referencia, por lo que tanto la original como el parámetro del método apuntan al mismo objeto. Puedes cambiar el estado interno del objeto dentro del método, pero si asignas un nuevo objeto al parámetro, la referencia original fuera del método no se ve afectada.

Este comportamiento es importante para predecir cómo cambian—o permanecen igual—tus variables después de llamar a métodos en Java.

Main.java

Main.java

copy
123456789101112131415
package com.example; public class Main { public static void main(String[] args) { int number = 10; System.out.println("Before method call: number = " + number); changeValue(number); System.out.println("After method call: number = " + number); } public static void changeValue(int num) { num = 20; System.out.println("Inside method: num = " + num); } }

En este código, el método changeValue recibe una copia de la variable number porque Java utiliza paso por valor.
Cambiar num dentro del método no afecta a number en main, por lo que su valor permanece 10 después de la llamada al método.

question mark

¿Qué se imprime al ejecutar este código?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 10

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Sección 1. Capítulo 10
some-alt