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

[Java-기초] κ°œλ… 작기 3 (곡뢀 기둝) 계속 μž‘μ„±μ€‘

by μ½”λ”©ν•˜λŠ” λΆ•μ–΄ 2021. 2. 21.
λ°˜μ‘ν˜•

*멀버 λ³€μˆ˜

클래슀 내뢀에 μ„ μ–Έν•˜μ—¬ 객체 속성을 λ‚˜νƒ€λ‚΄λŠ” λ³€μˆ˜

​

 

*멀버 ν•¨μˆ˜ = λ©”μ„œλ“œ

클래슀 λ‚΄λΆ€μ—μ„œ 멀버 λ³€μˆ˜λ₯Ό μ‚¬μš©ν•˜μ—¬ 클래슀 κΈ°λŠ₯을 κ΅¬ν˜„ν•˜λŠ” 것

ex) get,set λ©”μ„œλ“œ

​

 

*νŒ¨ν‚€μ§€

클래슀 파일의 묢음

​

 

*λ©”μ„œλ“œ

ν•¨μˆ˜μ˜ ν•œ μ’…λ₯˜

​

 

*ν•¨μˆ˜

ν•˜λ‚˜μ˜ κΈ°λŠ₯을 μˆ˜ν–‰ν•˜λŠ” 일련의 μ½”λ“œ

​

 

*return μ˜ˆμ•½μ–΄μ™€ λ°˜ν™˜ν˜•

'이 ν•¨μˆ˜μ˜ κ²°κ³Ό 값을 λ°˜ν™˜ν•œλ‹€'λ₯Ό λœ»ν•˜λŠ” μ˜ˆμ•½μ–΄κ°€ return

λ°˜ν™˜ κ°’μ˜ μžλ£Œν˜•μ„ λ°˜ν™˜ν˜•μ΄λΌκ³  ν•œλ‹€.

λ°˜ν™˜ 값이 없을 땐 void λ₯Ό 써쀌. (μœ„μΉ˜λ₯Ό λΉ„μ›Œλ‘λ©΄ 였λ₯˜ λ°œμƒ)

voidλŠ” λΉ„μ–΄μžˆλ‹€λŠ” 의미둜 'λ°˜ν™˜ν•  값이 μ—†λ‹€'λŠ” 뜻의 μ˜ˆμ•½μ–΄

​

 

β˜…returnκ³Ό break의 차이

return : ν•¨μˆ˜λ₯Ό λΉ μ Έλ‚˜κ°

break : 반볡문만 λΉ μ Έλ‚˜κ°

​

 

*ν•¨μˆ˜ 호좜과 μŠ€νƒ λ©”λͺ¨λ¦¬

ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•˜λ©΄ κ·Έ ν•¨μˆ˜λ§Œμ„ μœ„ν•œ λ©”λͺ¨λ¦¬ 곡간이 ν• λ‹Ήλ˜λŠ”λ° 이 λ©”λͺ¨λ¦¬ 곡간을 'μŠ€νƒ'이라 λΆ€λ₯Έλ‹€.

ν”„λ‘œκ·Έλž¨μ—μ„œ μ—¬λŸ¬ ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜λŠ” κ²½μš°μ— ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•œ μˆœμ„œλŒ€λ‘œ λ©”λͺ¨λ¦¬ 곡간이 λ§Œλ“€μ–΄μ§€κ³  맨 λ§ˆμ§€λ§‰μ— ν˜ΈμΆœν•œ ν•¨μˆ˜λΆ€ν„° λ°˜ν™˜λœλ‹€.

​

 

*μ§€μ—­λ³€μˆ˜

ν•¨μˆ˜ λ‚΄λΆ€μ—μ„œλ§Œ μ‚¬μš©ν•˜λŠ” λ³€μˆ˜. { } λΉ μ Έλ‚˜κ°€λ©΄ μ‚¬μš© ν•  수 μ—†λ‹€.

​

 

*λ°˜ν™˜ 값이 μ—†μœΌλ©΄ λ°˜ν™˜ν˜•μ€ void둜 μ§€μ •ν•œλ‹€.

​

 

*카멜 ν‘œκΈ°λ²•

​

 

*νž™ μ˜μ—­

ν”νžˆ μ½”λ“œμ—μ„œ 'new μƒμ„±μž'λ₯Ό μ €μž₯ν•˜λŠ” μ˜μ—­

νž™ μ˜μ—­μ— λ³΄κ΄€λ˜λŠ” λ©”λͺ¨λ¦¬λŠ” λ©”μ„œλ“œ 호좜이 λλ‚˜λ„ μ‚¬λΌμ§€μ§€μ•Šκ³  μœ μ§€λœλ‹€.

​

 

*μŠ€νƒ μ˜μ—­

지역 λ³€μˆ˜μ™€ 맀개 λ³€μˆ˜κ°€ μ €μž₯λ˜λŠ” μ˜μ—­

μ‰½κ²Œ 말해, ν”„λ‘œκ·Έλž¨μ˜ μ‹€ν–‰ κ³Όμ •μ—μ„œ μž„μ‹œλ‘œ ν• λ‹Ήλ˜κ³  λ©”μ„œλ“œ 호좜이 λλ‚˜λ©΄ λ°”λ‘œ μ†Œλ©Έλ˜λŠ” 것듀이 μ €μž₯λœλ‹€.

​

 

β˜… μ°Έμ‘° λ³€μˆ˜μ— μ €μž₯λ˜λŠ” λ©”λͺ¨λ¦¬μ£Όμ†ŒλŠ” μŠ€νƒ μ˜μ—­μ— μ €μž₯λ˜μ§€λ§Œ, κ·Έ μ£Όμ†Œκ°€ κ°€λ¦¬ν‚€λŠ” λ©”λͺ¨λ¦¬λŠ” λͺ¨λ‘ νž™ μ˜μ—­μ— μ €μž₯λœλ‹€. (Cμ–Έμ–΄μ—μ„œ 쒀더 μžμ„Ένžˆ 배우자)

​

 

*μ°Έμ‘° κ°’

μƒμ„±λœ μΈμŠ€ν„΄μŠ€μ˜ λ©”λͺ¨λ¦¬ μ£Όμ†Œ κ°’

​

 

*μƒμ„±μž

μƒμ„±μžκ°€ ν•˜λŠ” 일은 클래슀λ₯Ό 처음 λ§Œλ“€ λ•Œ 멀버 λ³€μˆ˜λ‚˜ μƒμˆ˜λ₯Ό μ΄ˆκΈ°ν™”ν•˜λŠ” 것.

즉, μƒμ„±μžλŠ” 주둜 λ©€λ²„λ³€μˆ˜μ— λŒ€ν•œ 값듀을 λ§€κ°œλ³€μˆ˜λ‘œ λ°›μ•„μ„œ μΈμŠ€ν„΄μŠ€κ°€ μƒˆλ‘œ 생성될 λ•Œ λ©€λ²„λ³€μˆ˜ 값듀을 μ΄ˆκΈ°ν™” ν•˜λŠ” 역할을 ν•œλ‹€.

μΈμŠ€ν„΄μŠ€κ°€ 생성됨과 λ™μ‹œμ— λ©€λ²„λ³€μˆ˜μ˜ 값을 μ§€μ •ν•˜κ³  μΈμŠ€ν„΄μŠ€λ₯Ό μ΄ˆκΈ°ν™”ν•¨.

μƒμ„±μžλŠ” 클래슀λ₯Ό 생성할 λ•Œλ§Œ ν˜ΈμΆœν•œλ‹€.

μƒμ„±μž 이름은 클래슀 이름과 κ°™κ³ , λ°˜ν™˜ 값이 μ—†λ‹€.

​

 

*λ””ν΄νŠΈ μƒμ„±μž

public Person( ) { }

λ§€κ°œλ³€μˆ˜κ°€ μ—†κ³  κ΅¬ν˜„ μ½”λ“œλ„ μ—†λ‹€.

ν•„μš”μ— 따라 직접 μ½”λ“œλ₯Ό κ΅¬ν˜„ν•  μˆ˜λ„ μžˆλ‹€.

​

 

*μƒμ„±μž μ˜€λ²„λ‘œλ“œ

ν΄λž˜μŠ€μ— μƒμ„±μžκ°€ 두 개 이상 μ œκ³΅λ˜λŠ” 경우.

μ—¬λŸ¬κ°€μ§€ μƒμ„±μžλ₯Ό μ œκ³΅ν•˜λ©΄ ν•„μš”ν•œ μƒμ„±μžλ₯Ό κ³¨λΌμ„œ μ‚¬μš©ν•  수 μžˆλ‹€.

μƒμ„±μž μ˜€λ²„λ‘œλ“œ

 

​

*μ°Έμ‘° μžλ£Œν˜•

클래슀 μžλ£Œν˜•μœΌλ‘œ 선언함. ex) String

​

 

*정보 은닉

private μ ‘κ·Ό μ œμ–΄μž : μ™ΈλΆ€ ν΄λž˜μŠ€μ—μ„œ μ‚¬μš©ν•  수 μ—†μŒ

μ‚¬μš©ν•˜λ €λ©΄ get, set λ©”μ„œλ“œ ν™œμš©

public λ©”μ„œλ“œλ₯Ό ν†΅ν•˜λ©΄ private λ³€μˆ˜μ— μ ‘κ·Όν•  수 μžˆλ‹€.

​

 

*this μ˜ˆμ•½μ–΄

thisλŠ” κ°„λ‹¨νžˆ μ„€λͺ…ν•˜λ©΄ μƒμ„±λœ μΈμŠ€ν„΄μŠ€ 슀슀둜λ₯Ό κ°€λ¦¬ν‚€λŠ” μ˜ˆμ•½μ–΄.

ν΄λž˜μŠ€μ— μƒμ„±μžκ°€ μ—¬λŸ¬ 개 μžˆμ„ λ•Œ μ–΄λ–€ μƒμ„±μžμ—μ„œ λ‹€λ₯Έ μƒμ„±μžλ₯Ό ν˜ΈμΆœν•˜λŠ” κ²½μš°κ°€ μ’…μ’… μžˆλ‹€. μ΄λ•Œ thisλ₯Ό μ‚¬μš©ν•΄ 클래슀의 μƒμ„±μžμ—μ„œ λ‹€λ₯Έ μƒμ„±μžλ₯Ό ν˜ΈμΆœν•  수 μžˆλ‹€.

thisλ₯Ό μ‚¬μš©ν•˜μ—¬ μƒμ„±λœ 클래슀 μžμ‹ μ˜ μ£Όμ†Œ 값을 λ°˜ν™˜ν•  수 μžˆλ‹€. μΈμŠ€ν„΄μŠ€ μ£Όμ†Œ 값을 λ°˜ν™˜ν•  λ•ŒλŠ” thisλ₯Ό μ‚¬μš©ν•˜κ³  λ°˜ν™˜ν˜•μ€ 클래슀 μžλ£Œν˜•μ„ μ‚¬μš©ν•œλ‹€.

​

 

*static λ³€μˆ˜

static λ³€μˆ˜λž€ λ‹€λ₯Έ μš©μ–΄λ‘œ '정적 λ³€μˆ˜'라고도 ν•œλ‹€.

static λ³€μˆ˜λŠ” 클래슀 내뢀에 μ„ μ–Έν•˜μ§€λ§Œ, λ‹€λ₯Έ 멀버 λ³€μˆ˜μ²˜λŸΌ μΈμŠ€ν„΄μŠ€κ°€ 생성될 λ•Œλ§ˆλ‹€ μƒˆλ‘œ μƒμ„±λ˜λŠ” λ³€μˆ˜κ°€ μ•„λ‹ˆλ‹€. static λ³€μˆ˜λŠ” ν”„λ‘œκ·Έλž¨μ΄ μ‹€ν–‰λ˜μ–΄ λ©”λͺ¨λ¦¬μ— μ˜¬λΌκ°”μ„λ•Œ λ”± ν•œλ²ˆ λ©”λͺ¨λ¦¬ 곡간이 ν• λ‹Ήλœλ‹€. 그리고 κ·Έ 값은 λͺ¨λ“  μΈμŠ€ν„΄μŠ€κ°€ κ³΅μœ ν•œλ‹€.

static λ³€μˆ˜λ₯Ό ν΄λž˜μŠ€μ— κΈ°λ°˜ν•œ λ³€μˆ˜λΌκ³  ν•΄μ„œ '클래슀 λ³€μˆ˜'라고도 ν•œλ‹€.

static λ³€μˆ˜λŠ” μΈμŠ€ν„΄μŠ€ μƒμ„±κ³ΌλŠ” λ³„κ°œμ΄λ―€λ‘œ μΈμŠ€ν„΄μŠ€λ³΄λ‹€ λ¨Όμ € μƒμ„±λœλ‹€. κ·ΈλŸ¬λ―€λ‘œ μΈμŠ€ν„΄μŠ€κ°€ μ•„λ‹Œ 클래슀 μ΄λ¦„μœΌλ‘œλ„ μ°Έμ‘°ν•˜μ—¬ μ‚¬μš©ν•  수 μžˆλ‹€.

​

 

*클래슀 λ©”μ„œλ“œ

static λ³€μˆ˜λ₯Ό μœ„ν•œ λ©”μ„œλ“œλ₯Ό λ§ν•œλ‹€. static λ©”μ„œλ“œ λ˜λŠ” 클래슀 λ©”μ„œλ“œλΌκ³  ν•œλ‹€.

클래슀 λ©”μ„œλ“œ λ˜ν•œ 클래슀 λ³€μˆ˜μ²˜λŸΌ μΈμŠ€ν„΄μŠ€ μ°Έμ‘° λ³€μˆ˜κ°€ μ•„λ‹Œ 클래슀 μ΄λ¦„μœΌλ‘œ 직접 ν˜ΈμΆœν•  수 μžˆλ‹€.

클래슀 λ©”μ„œλ“œ λ‚΄λΆ€μ—μ„œ 지역 λ³€μˆ˜μ™€ 클래슀 λ³€μˆ˜λŠ” μ‚¬μš©ν•  수 μžˆμ§€λ§Œ, μΈμŠ€ν„΄μŠ€ λ³€μˆ˜λŠ” μ‚¬μš©ν•  수 μ—†λ‹€.

클래슀 λ©”μ„œλ“œμ™€ 클래슀 λ³€μˆ˜λŠ” μΈμŠ€ν„΄μŠ€κ°€ μƒμ„±λ˜μ§€ μ•Šμ•„λ„ μ‚¬μš©ν•  수 μžˆλ‹€.

​

 

*static μ‘μš© - 싱글톀 νŒ¨ν„΄

μΈμŠ€ν„΄μŠ€λ₯Ό 단 ν•˜λ‚˜λ§Œ μƒμ„±ν•˜λŠ” λ””μžμΈ νŒ¨ν„΄

static을 μ‘μš©ν•˜μ—¬ ν”„λ‘œκ·Έλž¨ μ „λ°˜μ—μ„œ μ‚¬μš©ν•˜λŠ” μΈμŠ€ν„΄μŠ€λ₯Ό 단 ν•˜λ‚˜λ§Œ κ΅¬ν˜„ν•˜λŠ” 방식.

​

 

*싱글톀 κ΅¬ν˜„ 단계

1. μƒμ„±μžλ₯Ό private으둜 λ§Œλ“€κΈ°.

μΈμŠ€ν„΄μŠ€ μ—¬λŸ¬ 개 생성할 수 μ—†κ²Œ μ ‘κ·Όμ œμ–΄μžλ₯Ό private으둜 지정해야 ν•œλ‹€.

2. 클래슀 내뢀에 static으둜 μœ μΌν•œ μΈμŠ€ν„΄μŠ€ μƒμ„±ν•˜κΈ°

private static으둜 μƒμ„±ν•˜κΈ°

3. μ™ΈλΆ€μ—μ„œ μ°Έμ‘°ν•  수 μžˆλŠ” public λ©”μ„œλ“œ λ§Œλ“€κΈ°

이 λ•Œ μΈμŠ€ν„΄μŠ€λ₯Ό λ°˜ν™˜ν•˜λŠ” λ©”μ„œλ“œλŠ” λ°˜λ“œμ‹œ static으둜 μ„ μ–Έν•΄μ•Ό ν•œλ‹€. μ™œλƒν•˜λ©΄ getInstance() λ©”μ„œλ“œλŠ” μΈμŠ€ν„΄μŠ€ 생성과 상관없이 ν˜ΈμΆœν•  수 μžˆμ–΄μ•Ό ν•˜κΈ° λ•Œλ¬Έμ΄λ‹€.

​

 

*λ°°μ—΄

κ°œλ³„ λ³€μˆ˜λ“€μ„ μ—¬λŸ¬ 개 λ¬Άμ–΄μ„œ ν•˜λ‚˜μ˜ μ΄λ¦„μœΌλ‘œ μ„ μ–Έν•˜λŠ” 것

단점 : 가변적인 μžλ£Œν˜•μ—λŠ” 뢀적합. μƒμ„±ν• λ•Œ 크기가 μ§€μ •λ˜μ–΄μžˆμŒ.

​

 

*λ°°μ—΄ μ„ μ–Έκ³Ό μ΄ˆκΈ°ν™”

μžλ£Œν˜•[ ] λ°°μ—΄ 이름 = new μžλ£Œν˜•[개수];

μžλ£Œν˜• 배열이름[ ] = new μžλ£Œν˜•[개수];

​

배열을 μ„ μ–Έν•˜λ©΄ 그와 λ™μ‹œμ— 각 μš”μ†Œμ˜ 값이 μ΄ˆκΈ°ν™”λœλ‹€.

λ°°μ—΄ μ„ μ–Έκ³Ό λ™μ‹œμ— νŠΉμ • κ°’μœΌλ‘œ μ΄ˆκΈ°ν™”ν•  μˆ˜λ„ μžˆλ‹€.

ν•˜μ§€λ§Œ λ°°μ—΄μ˜ μžλ£Œν˜•μ„ λ¨Όμ € μ„ μ–Έν•˜κ³  μ΄ˆκΈ°ν™”ν•˜λŠ” κ²½μš°μ—λŠ” new int[ ]λ₯Ό μƒλž΅ν•  수 μ—†λ‹€.

​

λ°°μ—΄ μˆœμ„œλŠ” 0λ²ˆλΆ€ν„° n-1λ²ˆκΉŒμ§€λ‹€.

(0λΆ€ν„° 9κΉŒμ§€ 반볡이면 쑰건식을 i <= 9둜 μ“°λŠ”κ²Œ 더 쒋은거 μ•„λ‹Œκ°€μš”?

10이 λ°°μ—΄ κΈΈμ΄μ΄λ―€λ‘œ i < 10으둜 μ“°λŠ” 것이 훨씬 직관적이닀.)

​

μžλ°”μ˜ 배열은 λ°°μ—΄ 길이λ₯Ό λ‚˜νƒ€λ‚΄λŠ” length 속성을 가진닀. μžλ°”μ—μ„œ λ°°μ—΄ κΈΈμ΄λŠ” μ²˜μŒμ— μ„ μ–Έν•œ λ°°μ—΄μ˜ 전체 μš”μ†Œ 개수λ₯Ό μ˜λ―Έν•œλ‹€.

​

μ°Έμ‘° μžλ£Œν˜• λ³€μˆ˜λ„ μ—¬λŸ¬ 개λ₯Ό λ°°μ—΄λ‘œ μ‚¬μš©ν•  수 μžˆλ‹€.

​

 

*λ°°μ—΄ λ³΅μ‚¬ν•˜κΈ°

얕은 볡사 : κΈ°μ‘΄ λ°°μ—΄κ³Ό λ°°μ—΄ 길이가 κ°™κ±°λ‚˜ 더 κΈ΄ 배열을 λ§Œλ“€κ³  for문을 μ‚¬μš©ν•˜μ—¬ 각 μš”μ†Œ 값을 λ°˜λ³΅ν•΄μ„œ λ³΅μ‚¬ν•˜λŠ” 방법. (두 λ°°μ—΄μ˜ μ„œλ‘œ λ‹€λ₯Έ μš”μ†Œκ°€ 같은 μΈμŠ€ν„΄μŠ€λ₯Ό 가리킀고 μžˆλ‹€)

κΉŠμ€ 볡사 : System.arraycopy() λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜λŠ” 것. μΈμŠ€ν„΄μŠ€λ₯Ό λ”°λ‘œ κ΄€λ¦¬ν•˜κ³  μ‹Άλ‹€λ©΄ 직접 μΈμŠ€ν„΄μŠ€λ₯Ό λ§Œλ“€κ³  κ·Έ 값을 볡사해야 ν•œλ‹€.

​

 

*ν–₯μƒλœ forλ¬Έκ³Ό λ°°μ—΄

λ°°μ—΄μ˜ μ²˜μŒμ—μ„œ λκΉŒμ§€ λͺ¨λ“  μš”μ†Œλ₯Ό μ°Έμ‘°ν•  λ•Œ μ‚¬μš©ν•˜λ©΄ νŽΈλ¦¬ν•œ 반볡문.

λ”°λ‘œ μ΄ˆκΈ°ν™”μ™€ μ’…λ£Œ 쑰건이 μ—†κΈ° λ•Œλ¬Έμ— λͺ¨λ“  λ°°μ—΄μ˜ μ‹œμž‘ μš”μ†ŒλΆ€ν„° 끝 μš”μ†ŒκΉŒμ§€ μ‹€ν–‰ν•œλ‹€.

​

 

*이차원 λ°°μ—΄

2ν–‰ 3μ—΄μ˜ 이차원 λ°°μ—΄

 

이차원 배열을 μ΄ˆκΈ°ν™”ν•˜λ €λ©΄ λ‹€μŒμ²˜λŸΌ ν–‰κ³Ό μ—΄ κ°œμˆ˜μ— λ§žμΆ”μ–΄μ„œ μ€‘κ΄„ν˜Έ { } μ•ˆμ— 콀마(,)둜 ꡬ뢄해 값을 μ λŠ”λ‹€.

​

 

*ArrayList 클래슀

add( ) λ©”μ„œλ“œλ₯Ό μ΄μš©ν•˜λ©΄ λ°°μ—΄ 길이와 상관없이 객체λ₯Ό μΆ”κ°€ν•  수 μžˆλ‹€.

λ°°μ—΄ 이름은 주둜 list둜 많이 씀

ArrayListλ₯Ό μ‚¬μš©ν•˜λ €λ©΄ μžλ°” 클래슀λ₯Ό μ„ μ–Έν•˜κΈ° 전에 import java.util.ArrayList; λ¬Έμž₯을 λ°˜λ“œμ‹œ 써 μ£Όμ–΄μ•Ό ν•œλ‹€.

​

 

*상속

μžλ°” λ¬Έλ²•μœΌλ‘œ 상속을 κ΅¬ν˜„ν•  λ•ŒλŠ” extends μ˜ˆμ•½μ–΄λ₯Ό μ‚¬μš©ν•œλ‹€.

​

 

*protected μ˜ˆμ•½μ–΄

μƒμœ„ ν΄λž˜μŠ€μ—μ„œ μž‘μ„±ν•œ λ³€μˆ˜λ‚˜ λ©”μ„œλ“œ 쀑 μ™ΈλΆ€ ν΄λž˜μŠ€μ—μ„œ μ‚¬μš©ν•  수 μ—†μ§€λ§Œ ν•˜μœ„ ν΄λž˜μŠ€μ—μ„œλŠ” μ‚¬μš©ν•  수 μžˆλ„λ‘ μ§€μ •ν•˜λŠ” μ˜ˆμ•½μ–΄.

즉, protectedλŠ” μƒμ†λœ ν•˜μœ„ 클래슀λ₯Ό μ œμ™Έν•œ λ‚˜λ¨Έμ§€ μ™ΈλΆ€ ν΄λž˜μŠ€μ—μ„œλŠ” privateκ³Ό λ™μΌν•œ 역할을 ν•œλ‹€.

​

*ν•˜μœ„ ν΄λž˜μŠ€κ°€ 생성될 λ•ŒλŠ” μƒμœ„ 클래슀의 μƒμ„±μžκ°€ λ¨Όμ € ν˜ΈμΆœλœλ‹€.

​

*super μ˜ˆμ•½μ–΄λŠ” ν•˜μœ„ ν΄λž˜μŠ€μ—μ„œ μƒμœ„ 클래슀둜 μ ‘κ·Όν•  λ•Œ μ‚¬μš©ν•œλ‹€. λ˜ν•œ superλŠ” μƒμœ„ 클래슀의 μƒμ„±μžλ₯Ό ν˜ΈμΆœν•˜λŠ” 데도 μ‚¬μš©ν•œλ‹€.

λͺ¨λ“  ν•˜μœ„ ν΄λž˜μŠ€λŠ” μƒμœ„ 클래슀 μžλ£Œν˜•μœΌλ‘œ ν˜•λ³€ν™˜ν•  수 μžˆμ§€λ§Œ κ·Έ 역은 μ„±λ¦½ν•˜μ§€ μ•ŠλŠ”λ‹€.

λ°˜μ‘ν˜•

λŒ“κΈ€