μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- λ°±μ€9012
- μ€νΈλ¦Ό
- μ€νμμ΄
- StringBuilder
- μλ°
- ν방쿼리
- μΏ ν‘ERD
- μΏ ν‘DB
- λ°μ΄ν°νμ
- μ€ν
- μ
- λ°±μ€1874
- StringBuffer
- λ°±μ€9093
- java
- μ°μ°μ
- λ°±μ€11053 #νμ΄μ¬ #python
- λ
- μ°
- stream
- λ°°μ΄
- λ¬Έμμ΄
- Today
- Total
Tech Log π οΈ
Call By Value VS Call By Reference λ³Έλ¬Έ
μλ°λ κΈ°λ³Έμ μΌλ‘ Call By Value λ°©μμΌλ‘ λμνλ€.
λ³Έλ¬Έμ μμ λ€μ μ½λλ₯Ό 보μ
μλ°μμ μ λ¬ λ°μ κ°μ μμ ν κ²½μ° μλ³Έ κ°μ΄ λ³νλ μ§ μμ보기 μν μ½λμ΄λ€.
public static void mian() {
int x = 1;
int y = 2;
assertEquals(x, 1); // true
assertEquals(y, 2); // true
modify(x, y);
assertEquals(x, 1); // true
assertEquals(y, 2); // true
}
public static void modify(int x1, int y1) {
x1 = 5;
y1 = 10;
}
λ겨λ°μ κ°μ μμ νλλ° μλ³Έ κ°μ λ³ννμ§ μμμμ μ μ μλ€.
μ΄ μ΄μ λ μ€λ μμλ³Ό Call By Value λΌλ λ°©μ λλ¬Έμ΄λ€.
Call By Value μ Call By Reference μ μ°¨μ΄λ ?
- Call By Value λ°©μμ κ°λ§ λ겨μ€λ€. λ°λΌμ μ λ¬ λ°μ κ°μ μμ νλλΌλ μλ³Έκ°μ μν₯μ΄ μλ€. (μ°Έμ‘°κ°μ μμ νλ κ²½μ° μ μΈ)
- Call By Reference λ λ°©μμ μ£Όμκ° μ체λ₯Ό λ겨μ€λ€. λκ²¨μ€ κ° , μ λ¬ λ°μ κ° λͺ¨λ λμΌν λ³μμ΄λ€.
λ°λΌμ μ λ¬ λ°μ κ°μ μμ ν κ²½μ° μλ³Έ κ°λ λ³κ²½λλ€.
Call By Valueλ μ΄λ»κ² λμν κΉ ?
- λ¨Όμ JVMμμ μ΄λ»κ² λ³μλ₯Ό μ μ₯νλ μ§ μμ보μ
μμ νμ
μ€ν μμμ λ³μμ ν¨κ» κ°μ΄ μ μ₯λλ€.
μ°Έμ‘° νμ
μ°Έμ‘° νμ μ κ²½μ°, λ³μλ₯Ό 볡μ¬νμ¬ μ£Όμκ°μ μ μ₯νλ€.
μ¬κΈ°μ μ€ν΄νμ§ λ§μμΌ νλκ²μ μ£Όμκ° μ체λ₯Ό λ°λ κ²μ΄ μλ 볡μ¬νμ¬ λ°λ λ€λ κ²μ΄λ€.
λ°λΌμ μ°Έμ‘°νλ κ°μ λ³κ²½ν κ²½μ° μλ³Έ κ°μλ μν₯μ λ―ΈμΉλ€.
μ΄μ λ³μλ₯Ό λ³κ²½ν κ²½μ° κ°κ° μ΄λ»κ² λμνλ μ§ μμ보μ
μμ νμ
μμ νμ μ κ²½μ° λ겨 λ°μ κ°μ μμ λ€λ₯Έ λ³μμ΄κΈ° λλ¬Έμ μμ νλλΌλ μλ³Έ κ°μ μλ¬΄λ° μν₯μ΄ μλ€.
μ°Έμ‘° νμ
μ°Έμ‘° νμ λν λ¨μν 볡μ¬λ λ³μμ΄κΈ° λλ¬Έμ λ겨 λ°μ κ°μ μλ‘μ΄ κ°μ ν λΉνλλΌλ μλ³Έ κ°μλ μν₯μ΄ μλ€.
νμ§λ§ μ°Έμ‘°νλ κ°μ μ§μ μ μΌλ‘ μμ ν κ²½μ°λ λ ΌμΈμ΄λ€. (ex. λ°°μ΄)
Call By Reference μμ μ°¨μ΄λ?
κ·Όλ° μ£Όμκ°μ λ°κΈ° λλ¬Έμ Call By Reference λ°©μκ³Ό ν·κ°λ¦΄ μ μλ€.
λͺ νν ν΄μΌν κ²μ Call By Reference λ°©μμ λ³μ μ체λ₯Ό λκ²¨μ£Όκ³ μλ°λ λ³μλ₯Ό 볡μ¬ν΄μ λ°κΈ° λλ¬Έμ
μμ°ν μ°¨μ΄κ° μλ€.
μ°Έκ³ μλ£
https://www.baeldung.com/java-pass-by-value-or-pass-by-reference