ν΄λμ€μ κ΅¬μ± μμ
ν΄λμ€λ νλ(field), λ©μλ(method), μμ±μ(constructor), μ΄λ ν΄λμ€(inner class)λ‘ κ΅¬μ±λλ€.
κ΅¬μ± μμ μ€ μμ±μλ₯Ό μ μΈν νλ, λ©μλ, μ΄λ ν΄λμ€λ ν΄λμ€μ λ©€λ²(member)λΌκ³ λΆλ₯Έλ€.
νλ
μλ°μμ λ³μλ ν΄λμ€ λ³μ, μΈμ€ν΄μ€ λ³μ, μ§μ λ³μλ‘ λλλ€.
μ΄ μ€μμ νλλΌκ³ λΆλ¦¬λ κ²μ ν΄λμ€ λ³μμ μΈμ€ν΄μ€ λ³μμ΄λ€.
νλλ ν΄λμ€μ ν¬ν¨λ λ³μλ₯Ό μλ―Ένλ©° κ°μ²΄μ μμ±μ μ μν λ μ¬μ©λλ€.
νλ λ³μλ ν λ©λͺ¨λ¦¬μ μ μ₯λλ©° νμλ λΉ κ³΅κ°μ΄ μ μ₯λ μ μκΈ° λλ¬Έμ κ°μ λ‘ μ΄κΈ°νλλ€.
κ°μ²΄κ° μλ©Ένμ§ μλ ν νλ λ³μλ μμ λμ§ μλλ€.
1. ν΄λμ€ λ³μ (cv, class variable)
static
ν€μλμ ν¨κ» μ μΈλλ©° λͺ¨λ μΈμ€ν΄μ€κ° κ°μ 곡μ νλ€.- ν΄λμ€ λ΄λΆμ 곡ν΅λ μ μ₯곡κ°μ 곡μ νλ€.
- μΈμ€ν΄μ€λ₯Ό μμ±νμ§ μμλ
ν΄λμ€λͺ .ν΄λμ€ λ³μλͺ
μΌλ‘ μ¬μ©ν μ μλ€.
2. μΈμ€ν΄μ€ λ³μ (iv, instance variable)
- ν΄λμ€ λ³μμλ λ¬λ¦¬
static
ν€μλλ₯Ό μ¬μ©νμ§ μλλ€ - λ 립μ μΈ μ μ₯곡κ°μ κ°λλ€.
- μΈμ€ν΄μ€λ₯Ό μμ±ν μ΄νμλ§ μ¬μ©ν μ μλ€.
3. μ§μ λ³μ (lv, local variable)
- νλμ ν¬ν¨λμ§ μκ³ λ©μλ λ΄μ μ‘΄μ¬νλ λͺ¨λ λ³μλ₯Ό κ°λ¦¬ν¨λ€.
- μ€ν λ©λͺ¨λ¦¬μ μ μ₯λμ΄ λ©μλ μ’ λ£μ ν¨κ» μλ©Ένλ€.
- μ€ν λ©λͺ¨λ¦¬λ κ°μ λ‘ μ΄κΈ°νλμ§ μκΈ° λλ¬Έμ μ§μ λ³μλ μ μΈ μμ λ°λμ μ΄κΈ°νλ₯Ό ν΄μ€μΌ νλ€.
- νλμ μ¬μ©λμ§ μλ κ²½μ° κ°μ λ¨Έμ μ μν΄ μλμΌλ‘ μμ λλ€.
λ©μλ μ€λ²λ‘λ©(Method Overloading)
μ€λ²λ‘λ©μ΄λ νλμ ν΄λμ€ μμ κ°μ μ΄λ¦μ λ©μλλ₯Ό μ¬λ¬ κ° μ μνλ κ²μΌλ‘ κ°μ²΄μ§ν₯μ νΉμ§ μ€ λ€νμ±κ³Ό μ°κ΄μ΄ μλ€.
μ£Όμν μ μ λ©μλλͺ
μ΄ κ°λ€κ³ 무쑰건 μ€λ²λ‘λ©μ΄ λμ§ μλλ€λ κ²μ΄λ€.
μ€λ²λ‘λ©μ μ±λ¦½ 쑰건
λ©μλλͺ
μ΄ κ°μμΌ νκ³ λ§€κ°λ³μμ κ°μλ νμ
μ λ€λ₯΄κ² μ μν΄μΌ νλ€.
μ΄ λ κ°μ§ 쑰건μ λͺ¨λ μΆ©μ‘±ν΄μΌ μ€λ²λ‘λ©μ΄ μ±λ¦½νλ€.
μ€λ²λ‘λ©μ μ₯μ
νλμ λ©μλλ‘ μ¬λ¬ κ°μ§ κ²½μ°μ μλ₯Ό ν΄κ²°ν μ μλ€. ex) println()
'π Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java] μΆμν(Abstraction) (1) | 2022.09.07 |
---|---|
[Java] λ€νμ±(Polymorphism) (0) | 2022.09.07 |
[Java] μΊ‘μν π (0) | 2022.09.06 |
[Java] μμ(Inheritance) (0) | 2022.09.06 |
[Java] μμ±μμ λ΄λΆ ν΄λμ€ (4) | 2022.09.05 |