๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Java17

[JAVA] ์ƒ์† ์ƒ์†- ๊ธฐ์กด(์ƒ์œ„) ํด๋ž˜์Šค์˜ ์ž์‚ฐ(๋ฉค๋ฒ„)์„ ์ž์‹(ํ•˜์œ„) ํด๋ž˜์Šค์—์„œ ์žฌ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.- extends ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‘œ๊ธฐํ•œ๋‹ค.- ๋ชจ๋“  ํด๋ž˜์Šค์˜ ์กฐ์ƒ ํด๋ž˜์Šค๋Š” Object์ด๋‹ค. ํ•ด๋‹น ๊ทธ๋ฆผ์„ ๋ณด๋ฉด SpiderMan์ด๋ผ๋Š” ํด๋ž˜์Šค์— extends๋ฅผ ์ถ”๊ฐ€ํ•ด Person์˜ ์ƒ์† ํด๋ž˜์Šค๋กœ ์ •์˜ํ•˜์˜€๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด SpiderMan๋„ Person์˜ ๋ณ€์ˆ˜์™€ ๋ฉ”์„œ๋“œ์ธ name, jump(), eat()๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋œ๋‹ค. ์ƒ์†์˜ ์œ ์˜์ - ์ž๋ฐ”์—์„œ๋Š” ์ž์‹ ํด๋ž˜์Šค๋ฅผ ์„ ์–ธํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ฆฌ๊ฒŒ ๋˜๋ฉด ์ž์‹๋ถ€ํ„ฐ ์œ„์˜ ๋ชจ๋“  ๋ถ€๋ชจ ํด๋ž˜์Šค๋“ค์ด ๊ฐ™์ด ์˜ฌ๋ผ๊ฐ„๋‹ค.- ์ž๋ฐ”๊ฐ€ ๋ฌด๊ฒ๋‹ค๋Š” ๋ง์ด ๋‚˜์˜ค๊ฒŒ ๋œ ์ค‘์š” ํฌ์ธํŠธ์ธ ๊ฒƒ ๊ฐ™๋‹ค.- ๋ถ€๋ชจ ํด๋ž˜์Šค๋ฅผ ์„ ์–ธ ํ›„, ์ž์‹ ํด๋ž˜์Šค๋ฅผ ๋„ฃ์œผ๋ฉด ์ž์‹์˜ ๋ถ€๋ชจ ํด๋ž˜์Šค๋ฅผ ์ฐธ์กฐํ•œ๋‹ค.- ์—ฌ๊ธฐ์„œ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜.. 2024. 7. 17.
[JAVA] ๊ฐ์ฒด ๊ฐ์ฒด๊ฐ์ฒด๋ž€ ๋‘ ๊ฐ€์ง€ ์˜๋ฏธ๋กœ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋‹ค.1. ์ž์‹ ์˜ ์†์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉด์„œ ์‹๋ณ„์ด ๊ฐ€๋Šฅํ•œ ๊ฒƒ2. ํด๋ž˜์Šค์—์„œ ์ •์˜ํ•œ ๊ฒƒ์„ ํ† ๋Œ€๋กœ ๋ฉ”๋ชจ๋ฆฌ์— ํ• ๋‹น๋œ ๊ฒƒ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(Object-Oriented Programing, OOP)์ฃผ๋ณ€์˜ ์‚ฌ๋ฌผ์ด๋‚˜ ์ถ”์ƒ๊ฐ€๋Šฅํ•œ ๊ฒƒ์„ ๊ฐ์ฒด๋กœ ๋งŒ๋“ค๊ณ , ๊ฐ์ฒด๋“ค ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ์ด์šฉํ•˜์—ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜๋Š” ๋ฐฉ๋ฒ•๊ฐ์ฒด์ง€ํ–ฅ ์–ธ์–ด์˜ ํŠน์ง•์œผ๋กœ๋Š”- ์ถ”์ƒํ™”(Abstruction): ํ˜„์‹ค์˜ ๊ฐ์ฒด๋ฅผ ์ถ”์ƒํ™”( ๋ณธ์งˆ์ ์ด๊ณ  ๊ณตํ†ต์ ์ธ ๋ถ€๋ถ„์„ ๋ชจ์•„ ์ •์˜ํ•˜๋Š” ๊ฒƒ)- ๋‹คํ˜•์„ฑ(Polymorphism): ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋ฅผ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํƒ€์ž…์œผ๋กœ ์ฐธ์กฐ- ์ƒ์†(Inheritance): ๋ถ€๋ชจ ํด๋ž˜์Šค๋ฅผ ์ž์‹ ํด๋ž˜์Šค๋กœ ์ •์˜ํ•˜์—ฌ ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ- ์บก์Аํ™”(Encapsulation): ๋ฐ์ดํ„ฐ๋ฅผ ์™ธ๋ถ€์— ๋…ธ์ถœ์‹œํ‚ค์ง€ ์•Š๊ฒŒ ๋ณดํ˜ธ => ํ˜„์‹ค์˜ ๊ฐ์ฒด๋Š” ์ถ”.. 2024. 7. 16.
[JAVA] ์ž๋ฃŒ๊ตฌ์กฐ ์„ ์š”์•ฝ๊ตฌ๋ถ„์žฅ์ ๋‹จ์ ๋ฐฐ์—ด- ๋น ๋ฅธ ์ ‘๊ทผ ์†๋„- ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ํšจ์œจ์ - ํฌ๊ธฐ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€- API ๊ธฐ๋Šฅ ๋ถ€์žฌ์ปฌ๋ ‰์…˜- ์œ ์—ฐํ•œ ํฌ๊ธฐ ์กฐ์ ˆ- ํ’๋ถ€ํ•œ API- ๋‹ค์–‘ํ•œ ์ž๋ฃŒ๊ตฌ์กฐ ๊ตฌํ˜„์ฒด ์กด์žฌ- ์˜ค๋ฒ„ํ—ค๋“œ ์กด์žฌ- ์ œ๋„ค๋ฆญ ์‚ฌ์šฉ ํ•„์š”- ํƒ€์ž… ์•ˆ์ „์„ฑ ๋ฌธ์ œ ๋ฐœ์ƒ ๊ฐ€๋Šฅ ์ƒํ™ฉ ์ถ”์ฒœ ์ž๋ฃŒ๊ตฌ์กฐ ์š”์†Œ ์ˆ˜๊ฐ€ ๊ณ ์ •๋˜์–ด ์žˆ๊ณ  ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Œ๋ฐฐ์—ด์‚ฝ์ž…/์‚ญ์ œ๊ฐ€ ๋นˆ๋ฒˆํ•จLinkedList, HashMap๊ฒ€์ƒ‰์ด ๋นˆ๋ฒˆํ•˜๊ณ  ์ธ๋ฑ์Šค ๊ธฐ๋ฐ˜ ์ ‘๊ทผ ํ•„์š”ArrayList์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ์ง‘ํ•ฉ์ด ํ•„์š”HashSet, TreeSetํ‚ค-๊ฐ’ ๊ตฌ์กฐ์˜ ์ €์žฅ์ด ํ•„์š”HashMap, TreeMap ๋ฐฐ์—ด๊ฐ™์€ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์—ฐ์†์ ์œผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ณ ์ • ํฌ๊ธฐ ์ž๋ฃŒ ๊ตฌ์กฐ์ธ๋ฑ์Šค๋ฅผ ํ†ตํ•œ ๋น ๋ฅธ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅ๊ธฐ๋ณธํ˜•(int[])๊ณผ ์ฐธ์กฐํ˜•(String[]) ๋ชจ๋‘ ์ง€์›๋‹ค์ฐจ์› ๋ฐฐ์—ด ์ง€์›๋‚ด๋ถ€์ ์œผ๋กœ He.. 2024. 7. 15.
[JAVA] ๋ณ€์ˆ˜ ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•JAVA์˜ ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•(Primitive Types)์€ ๋‹ค์Œ 8๊ฐ€์ง€์ด๋‹ค์ข…๋ฅ˜์ž๋ฃŒํ˜•ํฌ๊ธฐ์˜ˆ์‹œ์ •์ˆ˜ํ˜•byte1 byte-128 ~ 127 short2 bytes-32,768 ~ 32,767 int4 bytes-2^31 ~ 2^31-1 long8 bytes-2^63 ~ 2^63-1๋ฌธ์žํ˜•char2 bytes'\u0000' ~ '\uffff' (์œ ๋‹ˆ์ฝ”๋“œ)์‹ค์ˆ˜ํ˜•float4 bytes32bit ๋ถ€๋™์†Œ์ˆ˜์  double8 bytes64bit ๋ถ€๋™์†Œ์ˆ˜์ ๋…ผ๋ฆฌํ˜•boolean1bit(๋…ผ๋ฆฌ์  ์˜๋ฏธ)true / false์ด์™ธ์˜ ์ž๋ฃŒํ˜•์€ ๋ชจ๋‘ ์ฐธ์กฐํ˜•์ด๋‹ค.์‹ค์ˆ˜ ๋’ค์— f๊ฐ€ ๋ถ™์–ด์žˆ์œผ๋ฉด float, ์—†์œผ๋ฉด double์ž๋ฐ”๋Š” 5๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฐ˜์˜ฌ๋ฆผ์ด๋‹ค.(5์ด์ƒ ์˜ฌ๋ฆผ, IEEE 754 ํ‘œ์ค€) varJAVA 10๋ถ€ํ„ฐ ๋„์ž…๋œ ์ง€์—ญ ๋ณ€์ˆ˜ ํƒ€์ž… .. 2024. 7. 15.
[JAVA] ์ž๋ฐ” ์ž…๋ฌธ ์„œ๋ก 1๋…„ ๊ฐ€๊นŒ์ด ๊ฐœ๋ฐœ์ž๋ฅผ ํ•˜๊ฒ ๋‹ค๊ณ  ์—ด์‹ฌํžˆ Java๋ถ€ํ„ฐ Springboot, DB, ์ธํ”„๋ผ, ๋ชจ๋‹ˆํ„ฐ๋ง ๋“ฑ๋“ฑ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํˆด๊ณผ ์†Œํ”„ํŠธ์›จ์–ด๋“ค์˜ ์‚ฌ์šฉ๋ฒ•์„ ๋ฐฐ์› ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ ํ”„๋กœ๊ทธ๋žจ๋“ค์„ ๊ณ„์† ์ˆ˜๋ฐ• ๊ฒ‰ ํ•ฅ๊ธฐ ์‹์œผ๋กœ ๋ฐฐ์šฐ๋‹ˆ ๋ญ”๊ฐ€ ๋จธ๋ฆฌ์— ๋‚จ๋Š”๊ฒŒ ์—†๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋ž˜์„œ ๋‹ค์‹œ ์ฒ˜์Œ๋ถ€ํ„ฐ ์žŠ๊ธฐ ์‰ฌ์šด ๋‚ด์šฉ์ด๋‚˜ ์ž˜ ๋ชจ๋ฅด๋Š” ๋‚ด์šฉ๋“ค์„ ํšŒ๊ณ ํ•˜๋ฉฐ ๋‹ค์‹œ ์ž๋ฐ”๋ถ€ํ„ฐ ๊ณต๋ถ€ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.์ž๋ฐ”?JVM์ด๋ผ๋Š” ๊ฒŒ ์žˆ์–ด ์šด์˜์ฒด์ œ๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒŒ ๋งŒ๋“ค ํ•„์š” ์—†์ด ๋˜‘๊ฐ™์ด ์‹คํ–‰๋œ๋‹ค.(OS์— ๋”ฐ๋ฅธ ๊ท€์ฐฎ์Œ์ด ์‚ฌ๋ผ์ง„๋‹ค.)GC(๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜)์ด ์žˆ์–ด์„œ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋„ ๋น„๊ต์  ํŽธํ•˜๋‹ค.ํŠน์ง•ํ”Œ๋žซํผ ๋…๋ฆฝ์„ฑ: JVM๋งŒ ์žˆ์œผ๋ฉด OS์— ๊ด€๊ณ„์—†์ด ๋™์ผํ•œ ๋ฐ”์ดํŠธ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด: ํด๋ž˜์Šค, ์ƒ์†, ์บก์Аํ™”, ๋‹คํ˜•์„ฑ ๋“ฑ์„ ์ง€์›ํ•œ๋‹ค.Garbage Collection: J.. 2024. 7. 10.