λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

STUDY/JAVA

JAVA - λ©”μ†Œλ“œ

λ°˜μ‘ν˜•

λ©”μ†Œλ“œ

   : 객체의 λ™μž‘μ— ν•΄λ‹Ήν•˜λŠ” μ‹€ν–‰ 블둝           void methodName() {....}

     - ν•„λ“œλ₯Ό 읽고 μˆ˜μ •

     - λ‹€λ₯Έ 객체λ₯Ό 생성해 λ‹€μ–‘ν•œ κΈ°λŠ₯을 μˆ˜ν–‰

     - κ°μ²΄κ°„μ˜ 데이터 μ „λ‹¬μ˜ μˆ˜λ‹¨

     - μ™ΈλΆ€λ‘œλΆ€ν„° λ§€κ°œκ°’μ„ 받을 수 있음

     - μ‹€ν–‰ ν›„ μ–΄λ–€ 값을 리턴

 

λ©”μ†Œλ“œ μ„ μ–Έ

  λ©”μ†Œλ“œ 선언은 μ„ μ–ΈλΆ€(λ¦¬ν„΄νƒ€μž…, λ©”μ†Œλ“œ 이름, λ§€κ°œλ³€μˆ˜ μ„ μ–Έ)와 μ‹€ν–‰λΈ”λ‘μœΌλ‘œ ꡬ성

  ⓐ λ¦¬ν„΄νƒ€μž… : λ©”μ†Œλ“œλŠ” 리턴값이 μžˆμ„ μˆ˜λ„ 있고 없을 μˆ˜λ„ μžˆλŠ”λ°,

      μ‹€ν–‰ ν›„ κ²°κ³Όλ₯Ό ν˜ΈμΆœν•œ 곳에 λ„˜κ²¨μ€˜μ•Ό ν•  경우 리턴값이 μžˆμ–΄μ•Ό ν•œλ‹€.

      POWERON의 경우 μ „μ›λ§Œ ν‚€λ©΄ 되기 λ•Œλ¬Έμ— 리턴값이 μ—†λ‹€. ->μ €μž₯ν•  λ³€μˆ˜κ°€ 없어도 됨

           -> void 

      κ³„μ‚°κΈ°μ˜ ADD의 경우 값을 λ”ν•œ 결과값이 μžˆμ–΄μ•Ό ν•˜κΈ° λ•Œλ¬Έμ— 리턴값이 μžˆλ‹€. -> 결과값을 μ €μž₯ν•  λ³€μˆ˜ ν•„μš”

           -> λ¦¬ν„΄κ°’μ˜ νƒ€μž…(int, double, ...)

 

 β“‘ λ©”μ†Œλ“œ 이름

   - 숫자둜 μ‹œμž‘ν•˜λ©΄ μ•ˆλ¨, $와 _ μ œμ™Έν•œ 특수문자 X

   - μ†Œλ¬Έμžλ‘œ μž‘μ„±(κ΄€λ‘€)

 

 β“’ λ§€κ°œλ³€μˆ˜ μ„ μ–Έ

   - λ©”μ†Œλ“œκ°€ μ‹€ν–‰ν•  λ•Œ ν•„μš”ν•œ 데잍λ₯Ό μ™ΈλΆ€λ‘œλΆ€ν„° λ°›κΈ° μœ„ν•΄ μ‚¬μš©λ¨

 

 β““ λ§€κ°œλ³€μˆ˜μ˜ 수λ₯Ό λͺ¨λ₯Ό λ•Œ

    -> λ§€κ°œλ³€μˆ˜λ₯Ό λ°°μ—΄ νƒ€μž…μœΌλ‘œ μ„ μ–Έ

sum1()κ³Ό sum2() λ©”μ†Œλ“œμ˜ 싀행문이 μ™„μ „ 일치

   => λ§€κ°œλ³€μˆ˜μ˜ μ„ μ–Έλ°©λ²•λ§Œ λ‹€λ₯Ό 뿐 λ§€κ°œλ³€μˆ˜μ˜ νƒ€μž…μ΄ λ°°μ—΄μ΄λ―€λ‘œ μ²˜λ¦¬λ‚΄μš©μ΄ κ°™μŒ

 

리턴문

ⓐ 리턴값이 μžˆλŠ” λ©”μ†Œλ“œ

 : λ©”μ†Œλ“œ μ„œμ–Έμ— λ¦¬ν„΄νƒ€μž…μ΄ μžˆλŠ” λ©”μ†Œλ“œλŠ” λ°˜λ“œμ‹œ 리턴문을 μ‚¬μš©ν•΄μ„œ 리턴문을 지정해야함 

 : 리턴문이 μ‹€ν–‰λ˜λ©΄ λ©”μ†Œλ“œ μ¦‰μ‹œ μ’…λ£Œ

 : Unreachable code 였λ₯˜ >> return 이후에 싀행문이 였면 λ°œμƒ( return μ΄ν›„μ˜ 싀행문은 μ‹€ν–‰ x)

 

β“‘ 리턴값이 μ—†λŠ” λ©”μ†Œλ“œ(void)

  : 리턴값이 μ—†λŠ” λ©”μ†Œλ“œμ—μ„œλ„ return문을 μ‚¬μš©ν•  수 μžˆλ‹€( = μ’…λ£Œ)

 

λ©”μ†Œλ“œ 호좜

 - λ©”μ†Œλ“œλŠ” 클래슀 λ‚΄, μ™ΈλΆ€μ˜ ν˜ΈμΆœμ— μ˜ν•΄ μ‹€ν–‰λœλ‹€.

 - 클래슀 λ‚΄λΆ€μ˜ λ‹€λ₯Έ λ©”μ†Œλ“œμ—μ„œ 호좜 : λ©”μ†Œλ“œ μ΄λ¦„μœΌλ‘œ 호좜

 - 클래슀 μ™ΈλΆ€μ—μ„œ 호좜 : 원 ν΄λž˜μŠ€λ‘œλΆ€ν„° 객체λ₯Ό μƒμ„±ν•œ λ’€, μ°Έμ‘° λ³€μˆ˜λ₯Ό μ΄μš©ν•΄μ„œ λ©”μ†Œλ“œλ₯Ό ν˜ΈμΆœν•΄μ•Ό 함

    ( 객체가 μ‘΄μž¬ν•΄μ•Ό λ©”μ†Œλ“œλ„ μ‘΄μž¬ν•˜κΈ° λ•Œλ¬Έμ—)

 

ⓐ 객체 λ‚΄λΆ€μ—μ„œ 호좜

β“‘ 객체 μ™ΈλΆ€μ—μ„œ 호좜

 κ°μ²΄ 생성 > .(λ„νŠΈ μ—°μ‚°μž)λ₯Ό μ‚¬μš©ν•΄ λ©”μ†Œλ“œ 호좜

 

λ©”μ†Œλ“œ μ˜€λ²„λ‘œλ”©

ν•˜λ‚˜μ˜ λ©”μ†Œλ“œ μ΄λ¦„μœΌλ‘œ μ—¬λŸ¬ κΈ°λŠ₯을 λ‹΄μŒ 

쑰건 : λ§€κ°œλ³€μˆ˜μ˜ νƒ€μž…, 개수, μˆœμ„œ 쀑 ν•˜λ‚˜κ°€ 달라야 함

     ( λ§€κ°œλ³€μˆ˜μ˜ νƒ€μž…κ³Ό 개수, μˆœμ„œκ°€ λ˜‘κ°™μ„ 경우 λ§€κ°œλ³€μˆ˜ μ΄λ¦„λ§Œ λ°”κΎΈλŠ” 것은 μ˜€λ²„λ‘œλ”©μ΄ μ•„λ‹˜)

λ§€κ°œκ°’μ„ λ‹€μ–‘ν•˜κ²Œ λ°›μ•„ μ²˜λ¦¬ν•  수 μžˆλ„λ‘ ν•˜κΈ° μœ„ν•΄μ„œ μ‚¬μš©

 1. μ‚¬κ°ν˜•μ˜ 넓이λ₯Ό κ΅¬ν•˜λŠ” 방법 μ˜€λ²„λ‘œλ”©(μ§μ‚¬κ°ν˜•, μ •μ‚¬κ°ν˜•)

 

μΈμŠ€ν„΄μŠ€λ©€λ²„μ™€ this

 * μΈμŠ€ν„΄μŠ€ 멀버 : 객체λ₯Ό μƒμ„±ν•œ ν›„ μ‚¬μš©ν•  수 μžˆλŠ” ν•„λ“œ & λ©”μ†Œλ“œ

  ν•„λ“œμ™€ λ©”μ†Œλ“œλŠ” 객체에 μ†Œμ†λœ 멀버이기 λ•Œλ¬Έμ— κ°μ²΄μ—†μ΄λŠ” μ‚¬μš©ν•  수 μ—†μŒ

  객체 μ™ΈλΆ€μ—μ„œ μΈμŠ€ν„΄μŠ€μ— μ ‘κ·Όν•˜κΈ° μœ„ν•΄ μ°Έμ‘°λ³€μˆ˜λ₯Ό μ‚¬μš©ν•œλ‹€λ©΄,

  κ°μ²΄λ‚΄λΆ€μ—μ„œλ„ μΈμŠ€ν„΄μŠ€ 멀버에 μ ‘κ·Όν•˜κΈ° μœ„ν•΄ thisλ₯Ό μ‚¬μš©ν•¨

    > 주둜 μƒμ„±μžμ™€ λ©”μ†Œλ“œμ˜ λ§€κ°œλ³€μˆ˜ 이름이 ν•„λ“œμ™€ λ™μΌν•œ 경우, μΈμŠ€ν„΄μŠ€ 멀버인 ν•„λ“œμž„μ„ λͺ…μ‹œν•˜κ³ μž ν•  λ•Œ μ‚¬μš©λ¨

λ°˜μ‘ν˜•