STUDY/JAVA (28) μΈλ€μΌν 리μ€νΈν μΆμν΄λμ€(Abastract) κ°λ λ° μμ μΆμμ΄λ? μ€μ²΄ κ°μ 곡ν΅λ νΉμ±μ μΆμΆνλ κ²μ λ§νλ€. μΆμν΄λμ€λ ν΄λμ€λ€κ°μ 곡ν΅λ νΉμ±μ μΆμΆν΄μ μ μΈν ν΄λμ€λ₯Ό λ§νλ©° μΆμ ν΄λμ€μ μλμ ν΄λμ€(μ€μ²΄ ν΄λμ€)λ€ κ°μλ μμμ κ΄κ³λ₯Ό κ°μ§κ³ μλ€. μΆμν΄λμ€κ° λΆλͺ¨ ν΄λμ€κ° λκ³ μ€μ²΄ν΄λμ€λ€μ΄ μμ ν΄λμ€κ° λμ΄ λΆλͺ¨μ λͺ¨λ νΉμ±μ κ°μ§κ³ μΆκ°μ μΈ νΉμ±μ κ°μ§ μ μλ€. μλ₯Ό λ€μ΄ iphone.class, galaxy.class, balckberry.classκ° μμ λ μ΄λ€μ 곡ν΅λλ νΉμ±μ μΆμΆν΄ phone.class λΌλ μΆμν΄λμ€λ₯Ό λ§λ€ μ μλ€. μ΄ μΆμν΄λμ€λ κ°μ²΄λ₯Ό μ§μ μμ±ν΄μ μ¬μ©ν μ μλ€. = new μ°μ°μλ₯Ό μ¬μ©ν΄ μΈμ€ν΄μ€λ₯Ό μ¬μ©ν μ μλ€. κ·Έλ¬λ©΄ μΆμ ν΄λμ€λ₯Ό μ μ¬μ©ν κΉ? 1. μ€μ²΄ ν΄λμ€λ€μ 곡ν΅λ νλμ λ©μλ.. μ΄κ±°νμ (Enumeration type) μ΄κ±°νμ : νμ λ κ°λ§μ κ°λ λ°μ΄ν° νμ μλ₯Όλ€μ΄ μΌμ£ΌμΌμλ μ,ν,μ,λͺ©,κΈ,ν ,μΌλ§ μκ³ 1λ μμλ 1~12μλ§ μλ κ²μ²λΌ μ΄κ±°νμ μ κ΄λ‘μ μΌλ‘ 첫 λ¬Έμλ λλ¬Έμ, λλ¨Έμ§λ μλ¬Έμλ‘ κ΅¬μ± μ΄κ±° νμ μ΄λ¦μΌλ‘ μμ€νμΌμ μμ± μ΄λ κ² μμ± & μ¬μ© ν μ μλ€. string λ°°μ΄ λΉκ΅(μ°Έμ‘°νμ λ°°μ΄ λΉκ΅) λ°°μ΄μ κ° νλͺ©μ μ§μ κ°μ κ°κ³ μμ§λ§ μ°Έμ‘°νμ (ν΄λμ€, μΈν°νμ΄μ€) λ°°μ΄μ κ° νλͺ©μ κ°μ²΄μ λ²μ§λ₯Ό κ°μ§κ³ μμ. string(ν΄λμ€νμ ) λ°°μ΄μ κ° νλͺ©μ λ¬Έμμ΄ κ·Έ μ체λ₯Ό κ°μ§κ³ μλ κ²μ΄ μλλΌ κ·Έ κ°μ²΄μ μ£Όμλ₯Ό κ°μ§κ³ μμ. κ·Έλμ λ°°μ΄ νλͺ© κ°μ λ¬Έμμ΄μ λΉκ΅νκΈ° μν΄μλ == μ°μ°μ(κ°μ²΄μ λ²μ§λΉκ΅) λμ equals() λ©μλλ₯Ό μ¬μ©ν΄μΌ ν¨ μ²μ λΉκ΅κ°μ "java"λΌλ λμΌν κ°μ²΄λ₯Ό μ°Έμ‘°νκΈ° λλ¬Έμ trueκ° λμ€κ³ λλ²μ§Έλ String κ°μ²΄λ₯Ό new μ°μ°μλ‘ μμ±ν΄ μλ‘μ΄ String κ°μ²΄κ° μμ±λκΈ° λλ¬Έμ λ€λ₯Έ κ°μ²΄λ₯Ό μ°Έμ‘°νλ―λ‘ false μΈλ²μ§Έλ equals()λ©μλλ‘ λ¬Έμμ΄λ§ λΉκ΅νκΈ° λλ¬Έμ trueκ° λμ¨λ€. Listμ Array(λ°°μ΄)μ μ°¨μ΄μ + ArrayList 1. List : μΈλ±μ€μμ΄ μμ°¨μ μΌλ‘ μ μ₯λ λ°μ΄ν°λ€μ μ§ν©μ λ§νλ€. νΉμ§ 1. μ°μμ μΈ κ³΅κ°μ μμ§ μμ(λΆμ°λμ΄ μ μ₯λ¨) 2. ν¬κΈ°κ° κ³ μ μ μ΄μ§ μμ(μλ°μμλ ν¬κΈ°κ° μλμΌλ‘ 1.5λ°°μ© λμ΄λ¨) 3. μ€κ°μ λ°μ΄ν° μ½μ μ΄λ μμ κ° μ¬μ 4. μ°μ§μλ λ©λͺ¨λ¦¬ ν λΉλμ΄ λ§μμ§ 2. Array(λ°°μ΄) : μΈλ±μ€λ₯Ό κ°μ§ λ°μ΄ν°λ€μ μ§ν©μ λ§νλ€. νΉμ§ 1. μ°μλ λ©λͺ¨λ¦¬ 곡κ°μ ν λΉλμ΄ μμ. 2. κ·Έλ¬λ―λ‘ μΈλ±μ€κ° μκ³ 3. ν¬κΈ°κ° κ³ μ λμ΄ μμ(κ°μ²΄ μμ± μ ν¬κΈ°ν λΉ) 4. μ€κ°μ λ°μ΄ν° μ½μ μ΄λ μμ κ° μ΄λ ΅λ€. 5. ν¬κΈ°κ° μ ν΄μ Έ μλ λ°μ΄ν°λ₯Ό μ¬μ©νλ€λ©΄ Arrayκ° λ ν¨μ¨μ JAVAμ Listμ’ λ₯μλ ArrayListμ LinkedListκ° μλ€. 3. LinkedList : νΉμ§ 1. Lin.. μ€λ²λ‘λ©κ³Ό μ€λ²λΌμ΄λ©μ μ°¨μ΄μ 1. μ€λ²λ‘λ©(Overloading) : κ°μ ν΄λμ€ λ΄μμ μ΄λ¦μ κ°μ§λ§ 맀κ°λ³μμ κ°―μλ νμ μ΄ λ€λ₯Έ λ©μλλ₯Ό μ μνλ κ². νΉμ§ : 1. λ©μλμ μ΄λ¦μ΄ κ°μμΌν¨ 2. μ€λ²λ‘λ©νλ λ©μλμμ μ°¨μ΄μ μ΄ μμ΄μΌν¨(맀κ°λ³μμ κ°μ, λ°μ΄ν° νμ ) 3. μ°¨μ΄μ μ 리ν΄νμ ν¬ν¨λμ§ μμ μ΄λ°μμΌλ‘ μ¬κ°νμ ν¬κΈ°λ₯Ό ꡬνλ λ©μλλ₯Ό μ μ¬κ°νμΌ κ²½μ°μλ widthνλλ§, μ§μ¬κ°νμΌ κ²½μ°μλ width, height λκ°μ§λ₯Ό μ΄μ©ν΄μ μ€λ²λ‘λ©ν μ μλ€. 2. μ€λ²λΌμ΄λ©(Overriding) μ€λ²λΌμ΄λ©μ μμν΄λμ€μ λ©μλλ₯Ό νμν΄λμ€μμ μ¬μ μνλ κ². νΉμ§ : 1. μμν΄λμ€μ κ°μ μ΄λ¦μ λ©μλκ° μ‘΄μ¬ν΄μΌ ν¨ 2. μμν΄λμ€μ 맀κ°λ³μμ λ°ννμ΄ κ°μμΌ ν¨ 3. κ°μ²΄μ§ν₯ μΈμ΄μ νΉμ§μΈ λ€νμ± μ€ νλ 4. μ.. JAVA - Stream(μ€νΈλ¦Ό) μ€νΈλ¦Ό ? μ¬λ¬ μλ£μ μ²λ¦¬μ λν κΈ°λ₯μ ꡬνν΄ λμ ν΄λμ€ 1. μ€νΈλ¦Ό νΉμ§ - μλ£μ λμκ³Ό μκ΄μμ΄ νμ λμΌν μ°μ°μ μν - ν λ² μμ± & μ¬μ©ν μ€νΈλ¦Όμ μ¬μ¬μ© ν μ μμ - μ€νΈλ¦Όμ μ°μ°μ κΈ°μ‘΄ μλ£μ μν₯μ μ£Όμ§ μμ 2. μ€νΈλ¦Όμ°μ°μλ μ€κ°μ°μ°κ³Ό μ΅μ’ μ°μ° λ κ°μ§κ° μμ - μ€κ°μ°μ° : μλ£λ₯Ό κ±°λ₯΄κ±°λ λ³κ²½νμ¬ λ λ€λ₯Έ μλ£λ₯Ό λ΄λΆμ μΌλ‘ μμ± - μ΅μ’ μ°μ° : μμ±λ λ΄λΆμλ£λ₯Ό μλͺ¨ν΄ κ°λ©΄μ μ°μ°μ μν μ€κ°μ°μ° : filter(), map() filter() : 쑰건μ λ£κ³ κ·Έ 쑰건μ μ°ΈμΈ κ²½μ°λ§ μΆμΆ map() : μ΄λ¦λ§ μΆλ ₯ μ΅μ’ μ°μ° : forEach(), count(), sum(), reduce() forEach() : νλμ© μΆλ ₯ count() : κ°μ μΆλ ₯ sum() : ν©.. JAVA - @Override(λ©μλ μ¬μ μ) @Override(λ©μλ μ¬μ μ) ? μμλ λ©μλμ λ΄μ©μ΄ μμ ν΄λμ€μ λ§μ§ μμ λ μμν΄λμ€μμ λμΌν λ©μλλ₯Ό μ¬μ μ μ΄νμ μμ κ°μ²΄μμ ν΄λΉ λ©μλλ₯Ό νΈμΆνλ©΄ μ€λ²λΌμ΄λ©λ μμ λ©μλκ° νΈμΆλ¨. * κ·μΉ 1. λΆλͺ¨μ λ©μλμ λμΌν 리ν΄νμ , λ©μλ μ΄λ¦, 맀κ°λ³μ 리μ€νΈλ₯Ό κ°μ ΈμΌ ν¨ 2. μ κ·Ό μ νμ λ κ°νκ² μ€λ²λΌμ΄λ©ν μ μλ€. 3. μλ‘μ΄ μμΈλ₯Ό throwsν μ μλ€. * λ¨μΆν€ μμν λ€ shift + alt + s -> v(Override/Implement Methods) JAVA - μμ(Inheritance) μμ ? λΆλͺ¨ ν΄λμ€μ λ©€λ²λ₯Ό μμλ μμ ν΄λμ€μμλ μ¬μ© ν μ μμ μ½λμ μ€λ³΅μ μ€μ¬μ€ λΆλͺ¨ν΄λμ€μμ private μ κ·Ό μ νμλ₯Ό κ°μ§ νλμ λ©μλλ μμ λμμμ μ μΈ μμ java λ¬Έλ² class μμν΄λμ€ extends λΆλͺ¨ν΄λμ€ { //νλ //λ©μλ //μμ±μ } 1. λΆλͺ¨ν΄λμ€ μμ± 2. μμ ν΄λμ€ μμ± (model, colorμ λΆλͺ¨ ν΄λμ€μμ μμλ°μ) 3. λΆλͺ¨μ μμ ν΄λμ€ λͺ¨λ μ¬μ©ν ν΄λμ€ μμ± 3-0. DmbCellPhone dcp = new DmbCellPhone -> κ°μ²΄λ§ μμ±νλ κ²μ²λΌ 보μ΄μ§λ§ DmbCellPhoneμμ μμνλ λΆλͺ¨μΈ CellPhoneκ° λ¨Όμ μμ±λκ³ , DmbCellPhone κ° μμ±λλ€. 3-1. CellPhone μ νλ μ¬μ© 3-2. Dm.. μ΄μ 1 2 3 4 λ€μ