πŸ’»

Java ν”„λ‘œκ·Έλž˜λ° - μ ‘κ·Όμ œν•œμž(public, private) / μƒμ„±μž λ³Έλ¬Έ

KITRI/JAVA

Java ν”„λ‘œκ·Έλž˜λ° - μ ‘κ·Όμ œν•œμž(public, private) / μƒμ„±μž

λ˜νš¨λ‹ˆ 2020. 4. 29. 16:17

클래슀의 3λŒ€ νŠΉμ§•

  • 은닉화
  • ν•¨μˆ˜μ€‘λ³΅
  • 상속성

private λŠ” λ‚΄ μ†ŒμŠ€ λ°–μ—μ„œλŠ” μ‚¬μš©ν•  수 μ—†λ‹€.

ν•¨μˆ˜λŠ” privateλ₯Ό 쓰지 μ•ŠλŠ”λ‹€. λŒ€λΆ€λΆ„ public으둜 μ„ μ–Έν•΄ μ‚¬μš©ν•œλ‹€.

λ³€μˆ˜λŠ” private 둜 선언해도 ν•¨μˆ˜λ₯Ό ν†΅ν•΄μ„œ μ‚¬μš©μ΄ κ°€λŠ₯ν•˜λ‹€. κ·Έλž˜μ„œ λ³€μˆ˜λŠ” privateλ₯Ό μ‚¬μš©ν•œλ‹€.

 

ν•˜λ‚˜μ˜ ν΄λž˜μŠ€λŠ” 1개의 μžλ°” 파일둜 μž‘μ„±ν•˜μ§€λ§Œ, μ—¬κΈ°μ„œλŠ” μ„€λͺ…을 νŽΈν•˜κ²Œ ν•˜κΈ° μœ„ν•΄ ν•˜λ‚˜μ˜ νŒŒμΌμ— μž‘μ„±ν•΄μ„œ μ‚¬μš©ν•˜κ² λ‹€. ν•˜λ‚˜μ˜ μžλ°” νŒŒμΌμ—μ„œ μ—¬λŸ¬ 개의 클래슀λ₯Ό μž‘μ„±ν•  λ•ŒλŠ” ν•œ 개의 λ©”μΈν΄λž˜μŠ€λ§Œ public으둜 ν•˜κ³ , λ‚˜λ¨Έμ§€λŠ” public선언을 λΉΌμ€˜μ•Όν•œλ‹€.

 

 

 

μƒμ„±μžμ—μ„œ λ‹€λ₯Έ μƒμ„±μžλ₯Ό ν˜ΈμΆœν•  λ•Œμ—λŠ” λ‹€μŒκ³Ό 같이 this() μ½”λ“œλ₯Ό μ‚¬μš©ν•œλ‹€.

thisλŠ” μƒλž΅μ΄ κ°€λŠ₯ν•˜λ‹€. κ·Έλ ‡μ§€λ§Œ 이 κ²½μš°μ—λŠ” λ©€λ²„λ³€μˆ˜μ™€ μ§€μ—­λ³€μˆ˜κ°€ λ™μΌν•œ λ³€μˆ˜λͺ…이기 λ•Œλ¬Έμ— λͺ…μ‹œν•΄μ€˜μ•Όν•œλ‹€.

μ‹€λ¬΄μ—μ„œλŠ” λ³€μˆ˜κ°€ 맀우 많기 λ•Œλ¬Έμ— λ³€μˆ˜λͺ…을 λ‹€λ₯΄κ²Œ μž‘μ„±ν•˜λ©΄ ν˜Όλž€μ΄ μžˆμ–΄μ„œ κ°™κ²Œ μž‘μ„±ν•œλ‹€. κ·ΈλŸ¬λ―€λ‘œ thisλ₯Ό 써쀄 것!

 

 

 

 

λ“€μ–΄μ˜€λŠ” κ±° setter

λ‚˜κ°€λŠ”κ±° getter

 

μ΄ν΄λ¦½μŠ€μ—μ„œλŠ” μžλ™μœΌλ‘œ 생성해쀀닀. νŒ¨ν„΄λ°©μ‹μ˜ ν•˜λ‚˜. 

마우슀 였λ₯Έμͺ½ 클릭 > Source > Generate Getters and Setters

 

선택 ν›„ 생성. μ—¬κΈ°μ„œλŠ” Select All μ„ νƒν•΄μ„œ getter, setter λͺ¨λ‘ μƒμ„±ν•΄μ£Όμ—ˆλ‹€. 

 

 

μƒμ„±μž

:μƒμ„±μžλž€? μΈμŠ€ν„΄μŠ€κ°€ 생성될 λ•Œ ν˜ΈμΆœλ˜λŠ” 'μΈμŠ€ν„΄μŠ€ μ΄ˆκΈ°ν™” λ©”μ„œλ“œ' 이닀. λ”°λΌμ„œ μΈμŠ€ν„΄μŠ€ λ³€μˆ˜μ˜ μ΄ˆκΈ°ν™” μž‘μ—…μ— 주둜 μ‚¬μš©λ˜λ©°, μΈμŠ€ν„΄μŠ€ 생성 μ‹œμ— μ‹€ν–‰λ˜μ–΄μ•Ό ν•  μž‘μ—…μ„ μœ„ν•΄μ„œλ„ μ‚¬μš©λœλ‹€. 

 

쑰건 1) μƒμ„±μžλŠ” 클래슀λͺ…μ΄λž‘ κ°™λ‹€. 2) μƒμ„±μžλŠ” return이 μ—†λ‹€. 

 

λ³€μˆ˜λͺ… 영문자, 숫자 λ‹€ κ°€λŠ₯. 특수문자 μ•ˆλ˜μ§€λ§Œ _(언더바)λŠ” κ°€λŠ₯. μ•žμ— 숫자둜 μ‹œμž‘ν•  수 μ—†λ‹€. κΈΈμ΄λŠ” 32자 λ‚΄μ™Έλ‘œ μž‘μ„±. ν•¨μˆ˜λͺ…도 λ³€μˆ˜λͺ…μ²˜λŸΌ μ‚¬μš©κ°€λŠ₯.

데이터 전달 λ°©μ‹μ˜ 3κ°€μ§€λŠ” 1) .μ—°μ‚°μžλ₯Ό μ‚¬μš©ν•œ μ ‘κ·Ό, 2) ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•œ μ ‘κ·Ό, 3) μƒμ„±μžλ₯Ό μ‚¬μš©ν•œ μ ‘κ·Όμ΄μ—ˆλ‹€. 

 

멀버 λ³€μˆ˜λ₯Ό private둜 μ„ μ–Έν•˜κ²Œ 되면 λ‹€λ₯Έ ν΄λž˜μŠ€μ—μ„œ μ‚¬μš©μ΄ λΆˆκ°€λŠ₯ν•˜κΈ° λ•Œλ¬Έμ— . μ—°μ‚°μžλ₯Ό μ‚¬μš©ν•΄ 데이터λ₯Ό 전달할 수 μ—†λ‹€. 그러면 λ‚˜λ¨Έμ§€ 2 경우, ν•¨μˆ˜μ™€ μƒμ„±μžλ₯Ό μ΄μš©ν•œ 접근이 μžˆλ‹€.

 

ν•¨μˆ˜λŠ” 객체가 λ°œμƒμ„ ν•œ 후에 데이터λ₯Ό μ „λ‹¬ν•΄μ£ΌλŠ” 방식인데, 객체가 아무리 λ°œμƒν•΄λ„ ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•˜μ§€ μ•ŠμœΌλ©΄ μ•ˆλœλ‹€.

μƒμ„±μžλŠ” 객체 λ°œμƒκ³Ό λ™μ‹œμ— 데이터λ₯Ό 전달해쀀닀. λ”°λΌμ„œ μ†λ„λ©΄μ—μ„œλŠ” ν•¨μˆ˜λ³΄λ‹€λŠ” λΉ λ₯΄λ‹€. 주둜 νŠΉμ •ν•œ κ°’μœΌλ‘œ μ΄ˆκΈ°ν™” ν•΄μ€˜μ•Όν•  λ•Œ μ‚¬μš©ν•œλ‹€. staticλ³€μˆ˜μ™€ 같이 μ¨μ•Όν•œλ‹€. 

 

 

 

μ—†μœΌλ©΄ default μƒμ„±μž, 있으면 λ‚΄ 것이 μš°μ„ 

 

μƒμ„±μž 쀑볡

: λ˜‘κ°™μ€ μ΄λ¦„μ˜ μƒμ„±μžλ₯Ό λ§Œλ“€μ–΄μ„œ μ“Έ 수 μžˆλ‹€. 단, νŒŒλΌλ―Έν„°μ˜ νƒ€μž…κ³Ό 수만 같지 μ•ŠμœΌλ©΄ λœλ‹€. 리턴을 λͺ…μ‹œν•˜μ§€ μ•ŠλŠ”λ‹€.

 

 

μƒμ„±μžλ₯Ό μ΄μš©ν•œ 데이터 μ ‘κ·Ό

 

ν•¨μˆ˜λ₯Ό μ΄μš©ν•œ 데이터 μ ‘κ·Ό

 

 

 

 

λ°˜μ‘ν˜•
Comments