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

๐Ÿ“œ ์ž๋ฐ” Java25

Singleton(์‹ฑ๊ธ€ํ†ค ํŒจํ„ด) I.์‹ฑ๊ธ€ํ†ค ์†Œํ”„ํŠธ์›จ์–ด ๋””์ž์ธ ํŒจํ„ด์—์„œ ์‹ฑ๊ธ€ํ„ด ํŒจํ„ด(Singleton pattern)์„ ๋”ฐ๋ฅด๋Š” ํด๋ž˜์Šค๋Š”, ์ƒ์„ฑ์ž๊ฐ€ ์—ฌ๋Ÿฌ ์ฐจ๋ก€ ํ˜ธ์ถœ๋˜๋”๋ผ๋„ ์‹ค์ œ๋กœ ์ƒ์„ฑ๋˜๋Š” ๊ฐ์ฒด๋Š” ํ•˜๋‚˜์ด๊ณ  ์ตœ์ดˆ ์ƒ์„ฑ ์ดํ›„์— ํ˜ธ์ถœ๋œ ์ƒ์„ฑ์ž๋Š” ์ตœ์ดˆ์˜ ์ƒ์„ฑ์ž๊ฐ€ ์ƒ์„ฑํ•œ ๊ฐ์ฒด๋ฅผ ๋ฆฌํ„ดํ•œ๋‹ค. ์ด์™€ ๊ฐ™์€ ๋””์ž์ธ ์œ ํ˜•์„ ์‹ฑ๊ธ€ํ„ด ํŒจํ„ด์ด๋ผ๊ณ  ํ•œ๋‹ค. ์ฃผ๋กœ ๊ณตํ†ต๋œ ๊ฐ์ฒด๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ์ƒ์„ฑํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” DBCP(DataBase Connection Pool)์™€ ๊ฐ™์€ ์ƒํ™ฉ์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค. ์‰ฝ๊ฒŒ๋งํ•ด ์ธ์Šคํ„ด์Šค๋ฅผ ๋‚จ์šฉ์‹œํ‚ค์ง€์•Š๋Š”๋‹ค. ์‹ฑ๊ธ€ํ„ด ํŒจํ„ด์€ ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋งŒ์„ ์ƒ์„ฑํ›„ ํ˜ธ์ถœ๋œ ๊ณณ์—์„œ๋Š” ์ƒ์„ฑ๋œ ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ ์ „๋ฐ˜์ ์œผ๋กœ ๋‹จ ํ•˜๋‚˜์˜ ์ธ์Šคํ„ด์Šค๋งŒ์„ ์‚ฌ์šฉํ•˜๊ฒŒ ํ•˜๋Š” ํŒจํ„ด์ด๋‹ค. 2. ์‹ฑ๊ธ€ํ†ค์„ ํ™œ์šฉํ•œ ์˜ˆ์ œ ๊นƒํ—ˆ๋ธŒ ๋งํฌ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 .. 2021. 2. 4.
List์™€ HashMap, Iterator์„ ํ™œ์šฉํ•œ ์•ผ๊ตฌ ์„ ์ˆ˜ ๊ด€๋ฆฌ ํ”„๋กœ๊ทธ๋žจ main ํŒจํ‚ค์ง€ MainClass 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 package main; import java.util.Scanner; import dao.BaseballDao; public class MainClass { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //์Šค์บ๋„ˆ ์ƒ์„ฑ BaseballDao da.. 2021. 2. 3.
HashMap๊ณผ TreeMap HashMap์€ Map์ธํ„ฐํŽ˜์ด์Šค์˜ ํ•œ์ข…๋ฅ˜๋กœ์จ Key์™€ Value ๊ฐ’์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ํ˜•ํƒœ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. TreeMap์€ ์ด์ง„ํŠธ๋ฆฌ ๊ตฌ์กฐ๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 package m.. 2021. 2. 3.
LinkedList ๊ฐ„๋‹จ ์ •๋ฆฌ & ์š”์•ฝ LinkedList๋Š” ArrayList์™€ ํ•จ๊ป˜ List๋ฅผ ๊ตฌ์ฒดํ™”ํ•œ ํด๋ž˜์Šค๋‹ค. ArrayList๋Š” ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•ด์„œ List๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค์ง€๋งŒ. ArrayList์™€ ๋‹ฌ๋ฆฌ LinkedList๋Š” ๊ฐ๊ฐ์˜ ๋…ธ๋“œ๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•œ๋‹ค. ArrayList๋Š” ํ•œ๋ฉ์–ด๋ฆฌ ํฐ ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์ด์ง€๋งŒ, LinkedList๋Š” ์–‘๋ฐฉํ–ฅ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ๋กœ ๋งŒ๋“ค์–ด์ ธ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋…ธ๋“œ(Node)๋กœ ๊ตฌ์„ฑ๋˜์–ด ์—ฐ๊ฒฐ์ด ๋˜๋Š”๊ตฌ์กฐ๋‹ค. LinkedList์˜ ์žฅ์ ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œํ•˜๋Š” ๊ฒƒ์ด ์›ํ™œํ•˜๋‹ค๋Š”์ ์— ์žˆ๋‹ค. ์œ„์น˜๊ฐ€ ์–ด๋””๋“  ์ถ”๊ฐ€๋‚˜ ์‚ญ์ œ๋ฅผ ํ•  ๊ฒฝ์šฐ ๋ณ€๊ฒฝ๋˜๋Š” ๋…ธ๋“œ๋งŒ ๋‹ค์‹œ ์—ฐ๊ฒฐํ•ด์ฃผ๋ฉด ๋œ๋‹ค. ๊ฒฐ๋ก ์€ ArrayList๋Š” ๊ฒ€์ƒ‰์ด ๋งŽ์„๋•Œ ์‚ฌ์šฉํ•˜๊ณ  LinkedList๋Š” ์ฒจ์‚ญ์ด ๋งŽ์„๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ์˜ค๋Š˜ LinkedList ๊ณต๋ถ€ํ•œ๊ฒƒ ์˜ˆ์ œ 1 2.. 2021. 2. 3.