Notice
Recent Posts
Link
Today
Total
07-07 13:09
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๐ŸฐJAVA/Basic (9)

dingdong coding

[ JAVA ] Reflection

Reflection์˜ ๊ฐœ๋…์„ ์ดํ•ดํ•˜๋Š” ๋ชฉ์ ์œผ๋กœ ํฌ์ŠคํŒ…์„ ์ž‘์„ฑํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. Reflection : ๊ตฌ์ฒด์ ์ธ ํด๋ž˜์Šค ํƒ€์ž…์„ ์•Œ์ง€ ๋ชปํ•ด๋„, ๊ทธ ํด๋ž˜์Šค์˜ ๋ฉ”์†Œ๋“œ, ํƒ€์ž…, ๋ณ€์ˆ˜๋“ค์„ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” Java API : ์ปดํŒŒ์ผ ์‹œ๊ฐ„์ด ์•„๋‹Œ ์‹คํ–‰ ์‹œ๊ฐ„์— ๋™์ ์œผ๋กœ ํŠน์ • ํด๋ž˜์Šค ์ •๋ณด๋ฅผ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ๋ฒ• Framework, IDE์—์„œ ๋™์ ๋ฐ”์ธ๋”ฉ ๊ธฐ๋Šฅ ์ œ๊ณต(ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์ค‘ ๋™์ ์œผ๋กœ ํด๋ž˜์Šค ์ •๋ณด ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉ) ex) IntelliJ ์ž๋™์™„์„ฑ, Spring Framework Annotation ๋“ฑ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ์–ด๋–ค ํƒ€์ž…์˜ ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ• ์ง€ ๋ชจ๋ฅด๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด๋Ÿด ๋•Œ ๋ฆฌํ”Œ๋ ‰์…˜์„ ์‚ฌ์šฉํ•˜๊ณ  ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋Ÿฐํƒ€์ž„์— ํ˜„์žฌ ์‹คํ–‰๋˜๊ณ  ์žˆ๋Š” ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ ธ์™€์„œ ์‹คํ–‰ํ•ด์•ผ ๋˜๋Š” ๊ฒƒ์ด๋‹ค. ์ฆ‰, ๋ฆฌํ”Œ๋ ‰์…˜์€ ๊ฐ์ฒด๋ฅผ ํ†ต..

๐ŸฐJAVA/Basic 2022. 7. 24. 16:33
[ JAVA ] Garbage Collection

GC ( Garbage Collection ) GC๋ž€ Heap ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์žฌํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด Root Set์—์„œ ์ฐธ์กฐ๋˜์ง€ ์•Š๋Š” ๊ฐ์ฒด๋“ค์„ ํ•ด์ œํ•ด ๊ฐ€์šฉ๊ฐ€๋Šฅํ•œ ๊ณต๊ฐ„์„ ๋งŒ๋“œ๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค. * ์ฐธ์กฐ๋œ ๊ฐœ์ฒด : ํ”„๋กœ๊ทธ๋žจ์˜ ์ผ๋ถ€๊ฐ€ ์—ฌ์ „ํžˆ ํ•ด๋‹น ๊ฐœ์ฒด์— ๋Œ€ํ•œ ํฌ์ธํ„ฐ๋ฅผ ์œ ์ง€ํ•˜๊ณ  ์žˆ์Œ์„ ์˜๋ฏธ * ์ฐธ์กฐ๋˜์ง€ ์•Š์€ ๊ฐœ์ฒด : ํ”„๋กœ๊ทธ๋žจ์˜ ์–ด๋–ค ๋ถ€๋ถ„์—์„œ๋„ ๋” ์ด์ƒ ์ฐธ์กฐ๋˜์ง€ ์•Š์Œ ๋”ฐ๋ผ์„œ ํ•ด๋‹น ๊ฐœ์ฒด๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ํšŒ์ˆ˜ ์ž๋ฐ”์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๋ฉ”๋ชจ๋ฆฌ ํ•ด์ œ ์ž‘์—…์„ Garbage Colletor๊ฐ€ ๋‹ด๋‹นํ•˜๋ฉฐ, ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ•ด์ œํ•˜๋Š” ์ž‘์—…์€ Garbage Collection์ด๋ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰ null, System.gc() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋“ฑ๊ณผ ๊ฐ™์ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ์ง€์ •ํ•ด ํ•ด์ œํ•˜๋Š” ์ž‘์—…์€ ํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค. null๋กœ ์ง€์ •ํ•˜๋Š” ๊ฒƒ์€ ํฐ ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š์ง€๋งŒ..

๐ŸฐJAVA/Basic 2022. 7. 1. 15:47
[JAVA ] Set Interface

SET INTERFACE • ์ €์žฅ ์ˆœ์„œ๊ฐ€ ์—†๋Š” ๋ฐ์ดํ„ฐ์˜ ์ง‘ํ•ฉ์œผ๋กœ, ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ex) HashSet, LinkedHashSet( Hash Set์˜ ํ•˜์œ„ ํด๋ž˜์Šค ), TreeSet 1. HashSet • Hash๊ธฐ๋Šฅ๊ณผ Set ์ปฌ๋ ‰์…˜์ด ํ•ฉ์ณ์ง„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. • Hash Algorithm ์— ์˜ํ•ด ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ํŠน์ •์‹œ์ผœ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“  ๊ฒƒ์ž…๋‹ˆ๋‹ค. • ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ Set ์ปฌ๋ ‰์…˜์˜ ํด๋ž˜์Šค๋กœ ์ž…๋ ฅ์ˆœ์„œ์— ์ƒ๊ด€์—†์ด ์ €์žฅ๋˜์–ด ์ •๋ ฌํ•ด์ฃผ์ง€ ์•Š๊ณ  ์ค‘๋ณต๋œ ๊ฐ’์€ ์ €์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. • ๋งŒ์•ฝ ์š”์†Œ์˜ ์ €์žฅ์ˆœ์„œ๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•œ๋‹ค๋ฉด LinkedHashSet ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. • Null ์š”์†Œ๋„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. Hash Algorithm : ํ•ด์‹œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ํ•ด์‹œ ํ…Œ์ด๋ธ”์— ..

๐ŸฐJAVA/Basic 2022. 6. 28. 14:08
[JAVA ] Collection

Collection Framework ? • ๊ฐ์ฒด์˜ ๊ทธ๋ฃน • ์ž๋ฐ”์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. • Collection ์ธํ„ฐํŽ˜์ด์Šค๋Š” List, Set, Queue ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ํ™•์žฅ๋˜๋Š” ๋ฃจํŠธ ์ธํ„ฐํŽ˜์ด์Šค • Java์—์„œ๋Š” ๋ชจ๋“  Collection ํด๋ž˜์Šค์™€ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํฌํ•จํ•˜๋Š” ์ง‘ํ•ฉ์ธ "Collection Framework"๋ผ๋Š” ๊ฐœ๋…์ด ์ •์˜ • ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ์—๋Š” ์ปฌ๋ ‰์…˜์„ ๋‚˜ํƒ€๋‚ด๊ณ  ์กฐ์ž‘ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํด๋ž˜์Šค ๋ฐ ์ธํ„ฐํŽ˜์ด์Šค ์ง‘ํ•ฉ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. Java์—์„œ ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ž€ ๋‹ค์ˆ˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‰ฝ๊ณ  ํšจ๊ณผ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ํ‘œ์ค€ํ™”๋œ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜๋Š” ํด๋ž˜์Šค์˜ ์ง‘ํ•ฉ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌ์กฐํ™”ํ•˜์—ฌ ํด๋ž˜์Šค๋กœ ๊ตฌํ˜„ํ•ด ๋†“์€ ๊ฒƒ ์ปฌ๋ ‰์…˜ ์ธํ„ฐํŽ˜์ด์Šค 1) ..

๐ŸฐJAVA/Basic 2022. 6. 20. 12:11
[ JAVA ] HashMap

'ํ‚ค์— ๋Œ€ํ•œ ํ•ด์‹œ ๊ฐ’์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ์กฐํšŒํ•˜๋ฉฐ, ํ‚ค-๊ฐ’ ์Œ์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ํฌ๊ธฐ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” associate array' associate array : Map, Dictionary, Symbol Table ๋“ฑ HashMap์— ์•Œ์•„๋ณด๊ธฐ ์ „ Map์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž Map ์ด๋ž€? Map์€ Key-Value์˜ Mapping์ด๋‹ค. ์ฆ‰, ๋ชจ๋“  Key๊ฐ€ ์ •ํ™•ํžˆ ํ•˜๋‚˜์˜ Value์— Mapping๋˜๊ณ  Key๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Map์—์„œ ํ•ด๋‹น Value๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ Key์™€ Value๋Š” ๋ชจ๋‘ ๊ฐ์ฒด๋กœ Value๋Š” ์ค‘๋ณต์ €์žฅ๋  ์ˆ˜ ์žˆ์ง€๋งŒ Key๋Š” ์ค‘๋ณต์ €์žฅ์ด ๋ถˆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ์ˆœํžˆ List์— ๊ฐ’์„ ์ถ”๊ฐ€ ํ•˜์ง€ ์•Š๋Š” ์ด์œ , HashMap์ด ํ•„์š”ํ•œ ์ด์œ ๋Š” ๋ฌด์—‡์ผ๊นŒ? ๊ฐ„๋‹จํ•œ ์ด์œ ๋Š” ์„ฑ๋Šฅ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. List์—์„œ ํŠน..

๐ŸฐJAVA/Basic 2022. 6. 14. 14:18
[ JAVA, DB ์œ„์ฃผ ] ๊ฐœ๋ฐœ ๊ด€๋ จ ์šฉ์–ด ์ •๋ฆฌ ( ๊ฐœ์ธ ํ•™์Šต์šฉ )

Java Language ํŠน์ง• • ํ”Œ๋žซํผ ๋…๋ฆฝ์„ฑ : Java Application์€ ํด๋ž˜์Šค ํŒŒ์ผ์— ์ €์žฅ๋˜๊ณ  JVM์— ๋กœ๋“œ๋˜๋Š” ๋ฐ”์ดํŠธ ์ฝ”๋“œ๋กœ ์ปดํŒŒ์ผ : Application์€ JVM์—์„œ ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์–‘ํ•œ ์šด์˜์ฒด์ œ์™€ ์žฅ์น˜์—์„œ ์‹คํ–‰๊ฐ€๋Šฅ • ๊ฐ์ฒด ์ง€ํ–ฅ : C ๋ฐ C++์˜ ๋งŽ์€ ๊ธฐ๋Šฅ์„ ์ทจํ•˜๊ณ  ์ด๋ฅผ ๊ฐœ์„ ํ•œ ๊ฐ์ฒด์ง€ํ–ฅ ์–ธ์–ด ์ž…๋‹ˆ๋‹ค. : ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด๋ž€ ํ˜„์‹ค ์„ธ๊ณ„๋ฅผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์œผ๋กœ ์˜ฎ๊ฒจ์™€ ํ˜„์‹ค ์„ธ๊ณ„์˜ ์‚ฌ๋ฌผ๋“ค์„ ๊ฐ์ฒด๋กœ ๋ณด๊ณ  ๊ทธ ๊ฐ์ฒด๋กœ๋ถ€ํ„ฐ ๊ฐœ๋ฐœํ•˜๊ณ ์ž ํ•˜๋Š” ํŠน์ง•๊ณผ ๊ธฐ๋Šฅ์„ ๋ฝ‘์•„์™€ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜๋Š” ๊ฒƒ • ์ž๋™ Garbage ์ˆ˜์ง‘ : ์ž๋™์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ• ๋‹น ๋ฐ ํ• ๋‹น ํ•ด์ œํ•˜๋ฉฐ ํ”„๋กœ๊ทธ๋žจ์ด ํ•ด๋‹น ์ž‘์—…์— ๋ถ€๋‹ด์„ ๊ฐ–์ง€ ์•Š๋„๋ก ํ•œ๋‹ค. • ํ’๋ถ€ํ•œ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ : ์ž…/์ถœ๋ ฅ, ๋„คํŠธ์›Œํ‚น ๋ฐ ๋‚ ์งœ ์กฐ์ž‘๊ณผ ๊ฐ™์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•  ..

๐ŸฐJAVA/Basic 2022. 6. 14. 10:15