Development/Java
JavaReStudy...5
Kirok Kim
2022. 1. 4. 18:24
- oop
- μ₯μ
- λ§μ μμνμ κ°μ²΄λ₯Ό λΆλͺ¨νμ λ°°μ΄ νκ°μ§λ‘ μ μ₯ κ°λ₯.
- λ¨μ
- μ§μΉνλ λ³μκ° λΆλͺ¨νμ μ΄κΈ°λλ¬Έμ μ κ·Όκ°λ₯ν μμ±μ λΆλͺ¨νμ μμ±λ€λ§ κ°λ₯
- μ₯μ
1. μλμ±(μΊ‘μν) - Endcapsulation
- λ°μ΄ν° μλ μ€μν λ³μ,λ©μλ κ°μΆκΈ°.λ°μ΄ν° μμ μ±
- private μ μ©νκΈ° -> Getter / Setter μμ±
- private ->μΈλΆν΄λμ€μμ λ΄λΆλ³μμ μ§μ μμ λΆκ°λ₯->μλͺ»λ κ°μ νΌνκΈ°
2. μμμ± - Inheritance
- κΈ°μ‘΄μ μ½λλ₯Ό μ¬μ¬μ©νκΈ°->λΉ λ₯Έ κ°λ°
- μμκΈ°λ₯.λ€λ₯Έν΄λμ€μ λ³μ,ν¨μλ₯Ό λ΄κ²μ²λΌ μ μ
3. λ€νμ± - Polymorphism
- λ³μ 1κ°μ μ¬λ¬κ°μ§ νμ μ κ°μ²΄λ₯Ό μ μ₯νλ κ².
λ©μλ μ¬μ μ(μ€λ²λΌμ΄λ©)
- λΆλͺ¨μ λ©μλμ λμΌν μκ·Έλμ²(리ν΄νμ , λ©μλ μ΄λ¦,λ§€κ° λ³μ λͺ©λ‘)
- μ κ·Ό μ ν λ κ°νκ² x
- μλ‘μ΄ μμΈλ₯Ό throws x
-
// λΆλͺ¨μμ±μλ μμ μμ±μμ 맨 첫 μ€μμ νΈμΆλ¨ //μμμ μμ±μκ° λͺ μμ μΌλ‘ μ μΈλμ§ μμλ€λ©΄ μ»΄νμΌλ¬λ public Child(){ super();---> μλμμ± λΆλͺ¨μ κΈ°λ³Έ μμ±μ νΈμΆ } λ§μ½ λΆλͺ¨ ν΄λμ€μ κΈ°λ³Έ μμ±μκ° μκ³ λ§€κ° λ³μκ° μλ μμ±μλ§ μλ€λ©΄ super(λ§€κ°κ°) μμΌλ©΄ μ»΄νμΌμλ¬
class Parent(){ public Patent(){ this("λνλ―Όκ΅"); System.out.println("p()call"); } public Parent(String nation){ this.nation=nation; System.out.println("p(string)call"); } } class Child extends Parent{ private String name; public Child(){ this("νκΈΈλ"); System.out.println("c()call"); } public Child(String name){ this.name=name; System.out.println("c(stringf)call"); } class childEx{ main{ Child ch = new Child(); } } >>> p(string) call p()call c(stringf)call c()call
λ°μν