-
[Java] λμμΈ ν¨ν΄ (Builder ν¨ν΄)Android/Java 2021. 1. 3. 21:55λ°μν
- μ΄ κΈμ "μΈνλ° Java λμμΈ ν¨ν΄" κ°μλ₯Ό λ£κ³ 곡λΆν λ΄μ©μ λ°νμΌλ‘ μμ±νμμ΅λλ€.
Builder ν¨ν΄μ΄λ?
μλλ‘μ΄λ, μλ° κ°λ°μ ν λ μμ£Ό μ°μ΄λ ν¨ν΄ μ€ νλμ λλ€.
Builder ν¨ν΄μ ν΄λμ€ μμ± ν¨ν΄μΌλ‘ λ©€λ² λ³μκ° λ§μ κ²½μ° λ€μν μμ±μκ° νμνλ€λ λ¨μ μ ν΄κ²°ν μ μλ ν¨ν΄μ λλ€.
Builder ν¨ν΄μ μ¬μ©νλ©΄ μ½λμ κ°λ μ±μ΄ λμμ§κ³ μ μ§λ³΄μλ₯Ό νΈλ¦¬νκ² ν μ μμ΅λλ€. λν, κ°μ²΄ μμ±λ κΉλν ν μ μμ΅λλ€.
μλλ‘μ΄λμμ NotificationCompatμ μλ°μμ StringBuilderμμ Builder ν¨ν΄μ μ¬μ©νλ κ²μ νμΈν μ μμ΅λλ€.
Builder ν¨ν΄ μ¬μ©
Student κ°μ²΄μ Builder ν¨ν΄μ μ¬μ©νμμ΅λλ€.
μλ Studentμ μ 보( νλ², μ΄λ¦, μμ κ³Όλͺ©)κ° λ©€λ² λ³μλ‘ κ°κ° μ‘΄μ¬νλ€λ©΄, κ° λ©€λ² λ³μλ³λ‘ μμ±μλ₯Ό λ§λ€μ΄μΌνλ κ²½μ°κ° μκΉλλ€.
νμ§λ§ Builder ν¨ν΄μ μ¬μ©νμ¬ setID, setName, setLessonsμΌλ‘ νμν μ λ³΄λ§ μ€μ ν ν Builder κ°μ²΄λ₯Ό λ€μ λ°νν©λλ€.
λ°λΌμ μ¬λ¬ μμ±μ νμμμ΄ νμν λ©€λ²λ³μλ₯Ό μ€μ ν ν build() λ©μλλ₯Ό ν΅ν΄ Student κ°μ²΄λ₯Ό μ»μ μ μμ΅λλ€.
λ°μν'Android > Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java] JVMμ΄λ? μλ° μ½λ μ€ν (0) 2021.01.11 [Java] λμμΈ ν¨ν΄(Decorator ν¨ν΄) (0) 2021.01.08 [Java] λμμΈ ν¨ν΄(Adapter ν¨ν΄) (0) 2021.01.07 [Java] λμμΈ ν¨ν΄ (Singleton ν¨ν΄) (0) 2021.01.05 [Java] λμμΈ ν¨ν΄ (Factory ν¨ν΄) (0) 2021.01.05