Bifalgorithm post · Computer science one · Passing By Reference
How does Java handle passing primitive and object types to methods?
How does Java handle passing primitive and object types to methods? (Computer science one · Passing By Reference) — "Java does not allow you the ability to spe…
Ideas in this flowchart
- Java distingue el comportamiento de los tipos primitivos y de los objetos al pasarlos a métodos.
- Java no permite especificar explícitamente si una variable se pasa por referencia o por valor.
- Todos los tipos primitivos se pasan por valor.
- Todos los tipos de objetos se pasan por referencia.
- Muchos tipos integrados, como Integer y String, son inmutables.
- Un método que recibe un objeto inmutable no puede modificarlo.
- Un método solo puede modificar el objeto recibido si este es mutable.
- StringBuilder es un objeto de cadena mutable.
- El método append() modifica el contenido de StringBuilder agregando texto al final.
- El código compara el comportamiento de String y StringBuilder al añadir " world!".
- La operación s = s + " world!" crea una nueva cadena y cambia la referencia del parámetro s.
- La referencia a la cadena original "Hello" se pierde y se reemplaza por la nueva cadena.
- La instancia de StringBuilder se modifica mediante append(), pero sigue siendo el mismo objeto.
- En main se crean un objeto String y un objeto StringBuilder, ambos inicializados con "Hello".