λ©λͺ¨λ¦¬μμ μ¬μ©νκ³ μΆμ κ°μ²΄κ° μλ€λ©΄ μ°μ μ€κ³λλ₯Ό λ§λ€μ΄μΌ νλ€.
μ΄ μ€κ³λκ° λ°λ‘ ν΄λμ€μ΄λ©° μ΄λ° ν΄λμ€λ‘ λ§λ κ°μ²΄λ₯Ό μΈμ€ν΄μ€λΌκ³ νλ€.
νλμ νμ
μ΄λ€. μ΄λ₯Ό μ¬μ©μμ μνμ
μ΄λΌκ³ νλ€.
μ€κ³λ(ν΄λμ€)λ₯Ό κ°μ§κ³ μλμ°¨μμ±ν(κ°μ²΄)λ₯Ό λ§λ λ€κ³ μκ°νλ©΄ λλ€.
1. ν΄λμ€ μμ±κ³Ό μ μΈ
1) ν΄λμ€μ μΈ
β
public class ν΄λμ€λͺ
{ β¦ }
- μ¬κΈ°μ publicμ μ κ·Όμ§μ μμ€ νλλ‘ μΈλΆμμ μ κ·Όν μ μλ λ²μλ₯Ό modifyμμ μ‘°μ μ΄ κ°λ₯νλ€. (*modify: μ ννλ€.)
- publicμ μ΄λμλ μμ λ‘κ² μ κ·Όν μ μλ μ κ·Όμ§μ μμ΄λ€.
- ν΄λμ€ μ μΈ κ·μΉ
- νλ μ΄μμ λ¬Έμλ‘ μ΄λ£¨μ΄μ ΈμΌ ν¨
- 첫 κΈμμλ μ«μκ° μ¬ μ μμ
- $ _ μ΄μΈ νΉμλ¬Έμλ μ¬μ©ν μ μμ
- μλ° ν€μλ(μμ½μ΄)λ κΆμ₯νμ§ μμ Ex) int , for β X
- λλ¬Έμλ‘ μμν¨ (κ·μΉX μ½μO)
- νκΈμ μ¬μ©νμ§ μμ (κ·μΉX μ½μO)
- μ«μλ‘ μμνλ©΄ μλ¨
- ν΄λμ€ μ΄λ¦μ μ νλ€λ©΄ ν΄λμ€μ΄λ¦.java λ‘ μμ€νμΌμ μμ±ν΄μΌ ν¨
- μμ€νμΌκ³Ό ν΄λμ€μ΄λ¦ λμλ¬Έμ κ°μμΌ ν¨
2) ν΄λμ€λ‘λΆν° κ°μ²΄ μμ±
β
ν΄λμ€ λ³μ = new ν΄λμ€( );
- ν΄λμ€λ‘λΆν° κ°μ²΄λ₯Ό μμ±νλ €λ©΄ newμ°μ°μλ₯Ό μ¬μ©νλ€, newλ κ°μ²΄μμ±μ°μ°μλ‘ λ§ κ·Έλλ‘ κ°μ²΄λ₯Ό μμ±ν μ μλ€.
- κ°μ²΄ μμ± νμ κ°μ²΄μ λ²μ§κ° 리ν΄νλ€.
- κ°μ²΄ννλ€. β μΈμ€ν΄μ€ννλ€.
- newμ°μ°μλ‘ λ©λͺ¨λ¦¬μ λ²μ§λ₯Ό μμ±νλ€λ©΄ λ€μ ν΄λΉ λ²μ§κ° ν΄λμ€ λ³μμ μ μ₯ν΄μΌ νλ€.
- BasicClass b1 = new BasicClass( ); β λ€μ ν΄λμ€ λ³μμ μ μ₯νλ λ°©λ²
- λ³μκ° ν΄λμ€ κ°μ²΄λ₯Ό μ°Έμ‘°νλ€κ³ ν΄μ μ΄ λ³μλ₯Ό κ°μ²΄μ°Έμ‘°λ³μλΌκ³ νλ€.
- λ³μλ μ€νμμ, newμ μν΄ μμ±λ κ°μ²΄λ νμμμ μ μ₯λ¨
- μ€ν μμμ μ μ₯λ λ³μκ° νμμμ μ μ₯λ κ°μ²΄λ₯Ό μ°Έμ‘°νκ² λ¨ β κ°μ²΄μ°Έμ‘°λ³μ
- b1λ³μλ BasicClass κ°μ²΄λ₯Ό μ°Έμ‘°νλ€.
3) ν΄λμ€ μ μ₯μμΉ
- λͺ¨λ ν΄λμ€λ ν¨ν€μ§ μλ μμΉ (ν¨ν€μ§: λΉμ·ν ν΄λμ€ λ¬Άμ)
- ν¨ν€μ§κ° μμ μ defaultν¨ν€μ§μ μμ± λ¨ (μ΄μ°λλ ν¨ν€μ§μ μμ±λ¨)
- package ν΄λμ€κ²½λ‘ ;
2. ν΄λμ€μ ꡬμ±λ©€λ²
ν΄λμ€μλ κ°μ²΄κ° κ°μ ΈμΌν κ΅¬μ± λ©€λ²κ° μ μΈλλ€.
1) νλ
- κ°μ²΄μ κ³ μ λ°μ΄ν°, λΆν κ°μ²΄, μν μ 보λ₯Ό μ μ₯νλ κ³³μ΄λ€.
- λ³μμ λ€λ₯Έμ μ μμ±μμ λ©μλ μ 체μ μ¬μ©λλ©° κ°μ²΄κ° μλ©Έλμ§ μλ ν μ‘΄μ¬νλ€.
- property = νλ‘νΌν° = μμ±
2) μμ±μ
- newμ°μ°μλ‘ νΈμΆλλ νΉλ³ν λ©μλμ΄λ€.
- newλ₯Ό νΈμΆνλ©΄ νμμμ μμ±λλ€.
- κ°μ²΄μμ± μ μ΄κΈ°νλ₯Ό λ΄λΉ OR λ©μλλ₯Ό νΈμΆν΄ κ°μ²΄λ₯Ό μ¬μ©ν μ€λΉλ₯Ό νλ€.
3) λ©μλ
- κ°μ²΄μ λμμ ν΄λΉνλ μ€κ΄νΈ{ } μ€ν λΈλ‘μ΄λ€.
- λ©μλλ₯Ό μ€ννλ©΄ μ€κ΄νΈμ μλ λͺ¨λ μ½λλ€μ΄ μ€νλλ€.
- νλλ₯Ό μ½κ³ μμ νλ μν μ νλ€.
- κ°μ²΄ κ° λ°μ΄ν°λ₯Ό μ λ¬νλ μλ¨μ΄λ€.
π Reference
μ μ©κΆ, γνΌμ곡λΆνλ μγ, νλΉλ―Έλμ΄(2023)