λ‚˜μ˜ λͺ¨μ–‘

012 | Java - constructor, inner class λ³Έλ¬Έ

SEB/TIL

012 | Java - constructor, inner class

kexon 2022. 7. 8. 16:46

πŸ’™ 였늘 배운 것

🀍 μƒμ„±μž

더보기
  • μΈμŠ€ν„΄μŠ€κ°€ 생성될 λ•Œ ν˜ΈμΆœλ˜λŠ” μΈμŠ€ν„΄μŠ€ μ΄ˆκΈ°ν™” λ©”μ„œλ“œλ‘œ, 객체λ₯Ό μƒμ„±ν•˜λŠ” 역할을 ν•˜λŠ” 클래슀의 ꡬ성 μš”μ†Œ
  • μƒμ„±μžμ™€ λ©”μ„œλ“œμ˜ 차이
    • μƒμ„±μž 이름은 λ°˜λ“œμ‹œ 클래슀 이름과 같아야됨
    • μƒμ„±μžλŠ” λ¦¬ν„΄νƒ€μž…μ΄ μ—†μŒ
  • μ˜€λ²„λ‘œλ”© κ°€λŠ₯ → ν•œ 클래슀 λ‚΄ μ—¬λŸ¬κ°œμ˜ μƒμ„±μž μ‘΄μž¬ν•  수 있음
클래슀λͺ…(λ§€κ°œλ³€μˆ˜) { // μƒμ„±μž κΈ°λ³Έ ꡬ쑰
	// ν•˜λŠ” 일
}

🀍 κΈ°λ³Έμƒμ„±μžμ™€ λ§€κ°œλ³€μˆ˜κ°€ μžˆλŠ” μƒμ„±μž

더보기

κΈ°λ³Έμƒμ„±μž

  • λ§€κ°œλ³€μˆ˜κ°€ μ—†λŠ” μƒμ„±μž
  • λͺ¨λ“  ν΄λž˜μŠ€μ—λŠ” λ°˜λ“œμ‹œ ν•˜λ‚˜ μ΄μƒμ˜ μƒμ„±μžκ°€ 쑴재
    • λ”°λ‘œ λ§Œλ“€μ§€ μ•Šμ•„λ„ μΈμŠ€ν„΄μŠ€λ₯Ό 생성할 수 μžˆμ—ˆλ˜ μ΄μœ λŠ” μžλ°” μ»΄νŒŒμΌλŸ¬κ°€ κΈ°λ³Έμƒμ„±μžλ₯Ό μžλ™μœΌλ‘œ μΆ”κ°€ν•΄μ£Όμ—ˆκΈ° λ•Œλ¬Έ
  • 이미 μƒμ„±μžκ°€ μΆ”κ°€λ˜μ–΄ μžˆλŠ” κ²½μš°μ—λŠ” 이미 μΆ”κ°€λœ μƒμ„±μžλ₯Ό 기본으둜 μ‚¬μš©

λ§€κ°œλ³€μˆ˜κ°€ μžˆλŠ” μƒμ„±μž

  • κΈ°λ³Έμƒμ„±μž μ˜€λ²„λ‘œλ”©
  • λ§€κ°œλ³€μˆ˜λ₯Ό 톡해 호좜 μ‹œ ν•΄λ‹Ή 값을 λ°›μ•„ μΈμŠ€ν„΄μŠ€λ₯Ό μ΄ˆκΈ°ν™”ν•˜λŠ”λ° μ‚¬μš©
  • κ³ μœ ν•œ νŠΉμ„±μ„ κ°€μ§„ μΈμŠ€ν„΄μŠ€λ₯Ό 계속 λ§Œλ“€μ–΄μ•Όλ  λ•Œ 각기 λ‹€λ₯Έ κ°’μœΌλ‘œ μ΄ˆκΈ°ν™”ν•  수 μžˆμ–΄μ„œ 유용

🀍 this vs this()

더보기

this

  • ν•„λ“œλͺ…κ³Ό μ§€μ—­λ³€μˆ˜λ₯Ό κ΅¬λΆ„ν•˜κΈ° μœ„ν•œ μš©λ„
  • μΈμŠ€ν„΄μŠ€ μžμ‹ μ„ κ°€λ₯΄ν‚€λŠ” μ°Έμ‘°λ³€μˆ˜(κ°μ²΄μ£Όμ†Œ μ €μž₯λ˜μ–΄μžˆμŒ)

this()

  • 같은 클래슀의 λ‹€λ₯Έ μƒμ„±μž 호좜 μ‹œ 클래슀 μ΄λ¦„λŒ€μ‹  this() μ‚¬μš©
  • this() κ·œμΉ™
    • μƒμ„±μž λ‚΄λΆ€μ—μ„œλ§Œ μ‚¬μš©
    • μƒμ„±μž 첫 쀄에 μœ„μΉ˜
      • 첫 쀄이 μ•„λ‹ˆλ©΄ λ‹€λ₯Έ μƒμ„±μžλ‘œ 인해 호좜 μ΄μ „μ˜ μ΄ˆκΈ°ν™” μž‘μ—…μ΄ λ¬΄μ˜λ―Έν•΄μ§€κΈ° λ•Œλ¬Έ

🀍 μƒμ„±μž

πŸ’› λΈ”λ‘œκΉ…

  • μ–΄μ œ λΈ”λ‘œκΉ… μ„Έμ…˜μ˜ μ—°μž₯으둜 였늘 λΈ”λ‘œκ·Έ μ“°λŠ” μ‹œκ°„μ΄ λ”°λ‘œ λ°°μ •λ˜μ—ˆλ‹€. 
  • λΆ€νŠΈμΊ ν”„ μ‹œμž‘ν•˜κ³  개발 λΈ”λ‘œκ·Έλ₯Ό μ“°κΈ° μ‹œμž‘ν–ˆλŠ”λ° .. 사싀 개발 λΈ”λ‘œκ·Έλž„ 것도 μ—†λ‹€! 아직 개발 ν•œκ²Œ μ—†κΈ° λ•Œλ¬Έ!γ…‹γ…‹..
    λ§Žμ΄λ“€ ν•œλ‹€λŠ” TILλΆ€ν„° μ‹œμž‘ν•΄μ„œ κ³΅λΆ€ν•˜λ‹€κ°€ μƒκΈ°λŠ” κΆκΈˆν•œ 것듀 μ •λ¦¬ν•œ 게 λ‹€λ‹€.
  • μ²˜μŒμ—λŠ” ν‹°μŠ€ν† λ¦¬λ„ 처음이고, 개발 λΈ”λ‘œκ·ΈλΌλŠ” .. μ‘°κΈˆμ€ κ±°μ°½ν•œ μ΄λ¦„μœΌλ‘œ μ‹œμž‘ν•΄μ„œ ν¬μŠ€νŒ… ν•œ 개 μ“°λŠ”λ°λ„ λͺ‡μ‹œκ°„이 κ±Έλ Έλ‹€. μ•„λ¬΄νŠΌ κ·Έλ ‡κ²Œ ν¬μŠ€νŒ…μ„ 계속 ν•˜λ‹€ λ³΄λ‹ˆ μ‹œκ°„ λŒ€λΉ„ 효율이 맀우 λ–¨μ–΄μ§„λ‹€κ³  μƒκ°λ˜μ–΄ μ΄μ œλŠ” 배운 것, κ·Έλ‚  ν•œκ²ƒ, ν•˜λ£¨λ₯Ό λ³΄λ‚΄λ©΄μ„œ ν–ˆλ˜ 생각듀을 μ“°κ³  μžˆλ‹€. 계속 μ“°λ©΄μ„œ λ³΄μ™„ν•΄λ‚˜κ°€μžκ³  μƒκ°ν•œ λ’€λ‘œ λΈ”λ‘œκ·Έ μ“°λŠ”κ²Œ μ‘°κΈˆμ€ 마음이 νŽΈν•΄μ‘Œλ‹€.
  • 근데 막상 ν•™μŠ΅ μ‹œκ°„μ— λΈ”λ‘œκ·Έ 쓰라고 멍석 κΉ”μ•„μ£Όλ‹ˆκΉŒ ν•œ κΈ€μž ν•œ κΈ€μž μ“Έ λ•Œλ§ˆλ‹€ κ³ μ‹¬ν•˜κ²Œ λ˜λ„€..🀣

πŸ’œ μ˜€λŠ˜μ˜ 생각 쑰각λͺ¨μŒ

  • μ΄λ²ˆμ£Όλ„ 끝이 났닀. λ‚΄κ°€ μƒκ°ν•œ λ‚˜μ˜ λ¬Έμ œμ μ„ νŒŒμ•…ν•΄λ³΄μžλ©΄ 1. 이둠에 λ„ˆλ¬΄ 집착을 함 2. 이둠을 μ–΄λŠμ •λ„ μ•Œκ³  μ½”λ“œλ‘œ μ μš©μ„ ν•΄λ΄μ•Όλ˜λŠ”λ° μ‘μš©μ΄ μ•ˆλ¨ 3. 생각을 해도 문제λ₯Ό ν’€κΈ°κΉŒμ§€μ˜ μ‚¬κ³ λ‚˜ 논리가 μ—†μŒ -> 문제 λͺ»ν’ˆ 4. ν•˜κΈ°μ‹«μ–΄μ§ -> λ©λ•Œλ¦¬λŠ” μ‹œκ°„μ΄ λŠ˜μ–΄λ‚¨ μ •λ„λ‘œ λ³Ό 수 μžˆκ² λ‹€.
  • λ¬Έμ œμ μ„ μœ„ν•œ λ°©λ²•μœΌλ‘œλŠ”, 이젠 이둠보닀 코딩을 직접 많이 해봐야겠닀. μ—¬νƒœκΉŒμ§€ μ•ˆν•œκ²Œ μ’€ μ•„μ‰½μ§€λ§Œ it is what it is..πŸ₯²
  • κ°μ •μ˜ μ†Œμš©λŒμ΄μ— μ˜μ—°ν•΄μ§€κΈ°
  • λ‚˜ 쑰용히 ν•΄ 🀫

'SEB > TIL' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

014 | Java - Polymorphism, Abstraction  (0) 2022.07.12
013 | Java - Inheritance, Encapsulation  (2) 2022.07.11
011 | Java - class, object, field, method, static, overloading  (0) 2022.07.07
010 | Java - Array  (0) 2022.07.06
009 | Java - μ œμ–΄λ¬Έ  (0) 2022.07.05
Comments