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

OOP6

4. ์ž…/์ถœ๋ ฅ (Input/Output, I/O) ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ์ค‘์ด๋ผ ๊ธ€์„ ์ž‘์„ฑํ•˜์ง€ ๋ชปํ•˜๊ณ  ์žˆ์—ˆ๋„ค์š”. ๋‹ค์‹œ ๋ธ”๋กœ๊ทธ ๊ธ€ ์—ด์‹ฌํžˆ ์ž‘์„ฑํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•ž์„œ ํ™•์ธํ•ด๋ณด๋‹ˆ ์ž…/์ถœ๋ ฅ์— ๋Œ€ํ•ด ๋นผ๋œจ๋ ค๋จน์–ด์„œ ์ง€๊ธˆ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ž…/์ถœ๋ ฅ์ด๋ž€? ์ž๋ฐ”์—์„œ ์ž…/์ถœ๋ ฅ์ด๋ž€ ์šฐ๋ฆฌ๊ฐ€ ์•Œ๊ณ  ์žˆ๋Š” ๋А๋‚Œ ๊ทธ๋Œ€๋กœ. ์šฐ๋ฆฌ๊ฐ€ ์ง€๊ธˆ ํฌ์ŠคํŠธ ๊ธ€ ๋˜๋Š” ๋Œ“๊ธ€๊ณผ ๊ฐ™์ด ํ…์ŠคํŠธ ๋ฐ•์Šค์— ๊ธ€์„ ์ž‘์„ฑํ•˜๋ฉด ํ™”๋ฉด์— ๋ณด์ด๋Š” ๊ฒƒ. ํ‚ค๋ณด๋“œ๋ฅผ ์ด์šฉํ•ด์„œ ๊ธ€์„ ์ž‘์„ฑํ•˜๋Š” ํ–‰์œ„๊ฐ€ ์ž…๋ ฅ์ด๊ณ  ์ž‘์„ฑ๋œ ๊ธ€์ด ํ™”๋ฉด์— ๋ณด์ด๋Š” ๊ฒƒ์ด ์ถœ๋ ฅ์ด๋‹ค. ์ž๋ฐ”์—์„œ ์ถœ๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ• public class Main { public static void main(String[] args){ System.out.println("Hello World!"); } } ๊ธฐ๋ณธ์ ์œผ๋กœ ์ž๋ฐ”๋ฅผ ์‹œ์ž‘ํ•˜๊ฒŒ ๋˜๋ฉด Intelli J์™€ Eclipse๊ฐ™์€ IDE์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ฌธ๋ฒ•์ด๋‹ค. ์ž๋ฐ”.. 2024. 2. 24.
9. ๋ฐ˜๋ณต๋ฌธ - while ๋ฌธ, do while ๋ฌธ while ๋ฌธ ์ด๋ž€? while๋ฌธ๋„ for๋ฌธ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ~๋™์•ˆ ์ด๋ผ๋Š” ๋œป์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ฐ˜๋ณต๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด์ „ ํฌ์ŠคํŠธ์—์„œ for๋ฌธ์—์„œ ~๋™์•ˆ์„ ์˜๋ฏธํ•˜๋Š” ๊ณณ์ด ์กฐ๊ฑด์‹์ด๋ผ๊ณ  ์„ค๋ช…ํ–ˆ์Šต๋‹ˆ๋‹ค. while๋ฌธ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ '์กฐ๊ฑด์‹' ๋™์•ˆ ๋ฐ˜๋ณต์„ ํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์กฐ๊ธˆ ๋” ์ž์„ธํžˆ ์•Œ๊ธฐ ์œ„ํ•ด์„œ for๋ฌธ์˜ ์ˆ˜ํ–‰ ๊ณผ์ •์„ ๋ณต์Šตํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ์ˆ˜ํ–‰ (์ดˆ๊ธฐ๊ฐ’), ๋จผ์ €, '์ดˆ๊ธฐ๊ฐ’'์— ๋“ค์–ด๊ฐ€๋Š” ๋‚ด์šฉ์€ 0๊ฐœ ์ด์ƒ ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ดˆ๊ธฐ๊ฐ’์„ ์„ค์ •ํ•˜์ง€ ์•Š์•„๋„ ์ˆ˜ํ–‰๋˜๋Š” ๊ฒƒ์ด์ฃ . ์ €๋Š” 3๊ฐœ์˜ ๋ณ€์ˆ˜ i, j, cnt๋ฅผ ์ดˆ๊ธฐ๊ฐ’์œผ๋กœ ํŠน์ • ๊ฐ’์„ ํ• ๋‹น ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ์ˆ˜ํ–‰ (์กฐ๊ฑด์‹), ์กฐ๊ฑด๋™์•ˆ for๋ฌธ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์กฐ๊ฑด์€ i < j ์ด๋ฏ€๋กœ, (i : 10) < (j : 20) ๋ฅผ ๋งŒ์กฑํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ์ˆ˜ํ–‰์—์„œ ์กฐ๊ฑด.. 2024. 2. 10.
5. ์—ฐ์‚ฐ์ž(Operator)์™€ ์—ฐ์‚ฐ ์ˆœ์œ„ ์—ฐ์‚ฐ์ž๋ž€ ? ์šฐ๋ฆฌ๋Š” ์—ฐ์‚ฐ์ž์— ๋Œ€ํ•ด ์ด๋ฏธ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. +, -, *, / ์™€ ๊ฐ™์€ ์—ฐ์‚ฐ ๊ธฐํ˜ธ๋ฅผ ์˜๋ฏธํ•˜๋Š”๋ฐ์š”. ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ๋Š” ์‚ฌ์น™ ์—ฐ์‚ฐ ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ์—ฐ์‚ฐ์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์น™์—ฐ์‚ฐ + ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ public class Main { public static void main(String[] args) { int a = 18, b = 4; System.out.printf("a + b = %d\n", a + b); System.out.printf("a - b = %d\n", a - b); System.out.printf("a * b = %d\n", a * b); System.out.printf("a / b = %d\n", a / b); System.out.printf("a %% b = %d\n", a .. 2024. 2. 10.
2. ๋ณ€์ˆ˜(Variable)์™€ ํ• ๋‹น(Assign) ๋ณ€์ˆ˜๋ž€ ๋ฌด์—‡์ผ๊นŒ์š”? ์ˆ˜ํ•™์ ์œผ๋กœ ๋ดค์„ ๋•Œ, ๋ฏธ์ง€์ˆ˜๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜ํ•™์—์„œ๋Š” ์ฃผ๋กœ x, y์™€ ๊ฐ™์€ ๋ฏธ์ง€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ์ปดํ“จํ„ฐ์—์„œ๋Š” ๋ช‡ ๋ช‡ ํ‘œํ˜„์„ ์ œ์™ธํ•œ ๋ชจ๋“  ํ‘œํ˜„์ด ๋ฏธ์ง€์ˆ˜๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด์ด๋ฆ„, myName, myNickName, myNickName2, Hi, ... ๋‹ค๋งŒ ํ”ผํ•ด์•ผํ•  ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฌธ์ž๋Š” '_', '$', '๋ฌธ์ž'๋กœ ์‹œ์ž‘ํ•ด์•ผํ•œ๋‹ค. ์˜ˆ์•ฝ์–ด๋Š” ํ”ผํ•ด์•ผํ•œ๋‹ค. ๊ณต๋ฐฑ์„ ํฌํ•จํ•˜์ง€ ์•Š๋Š”๋‹ค. ์œ„ ๋‚ด์šฉ๋“ค์ด ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ํ‹€์ž…๋‹ˆ๋‹ค. ๋ณ„๊ฑฐ ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•˜์‹ค ์ˆ˜ ์žˆ์ง€๋งŒ, ๋” ์ค‘์š”ํ•œ ๋‚ด์šฉ์€ ์ง€๊ธˆ๋ถ€ํ„ฐ ์‹œ์ž‘์ž…๋‹ˆ๋‹ค. ์•ž์„œ, ์ˆ˜ํ•™์ ์ธ ๊ด€์ ์—์„œ ๋ณ€์ˆ˜๋ฅผ ๋ฏธ์ง€์ˆ˜๋กœ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ–ˆ์ง€๋งŒ ์—„๋ฐ€ํžˆ ๋งํ•˜์ž๋ฉด ๋ณ€์ˆ˜ ≠ ๋ฏธ์ง€์ˆ˜ ์ž…๋‹ˆ๋‹ค. ๋ฏธ์ง€์ˆ˜๋Š” x = 10 ์ด๋ผ๋Š” ์˜๋ฏธ๊ฐ€ x๋Š” 10์ด๋‹ค. ๋ผ๊ณ  ํ•ด์„ํ•  ์ˆ˜ ์žˆ์ฃ ? ๋ณ€์ˆ˜๋Š” .. 2024. 1. 2.
1. ์ž๋ฐ” ์‹œ์ž‘ํ•˜๊ธฐ Java๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด Java๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด ๋˜์–ด์•ผํ•œ๋‹ค. Java๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด๋ž€? C, C++๊ณผ ๊ฐ™์€ C๊ธฐ๋ฐ˜ ์–ธ์–ด์˜ ๊ฒฝ์šฐ ๊ธฐ๋ณธ์ ์ธ ๋ช…๋ น์€ ์ด๋ฏธ ์šฐ๋ฆฌ PC์— ์„ค์น˜๋˜์–ด ์žˆ๋‹ค. ๊ทธ ์ด์œ ๋Š” ๋Œ€๋ถ€๋ถ„ ์šด์˜์ฒด์ œ(OS)๋Š” C์–ธ์–ด ๊ธฐ๋ฐ˜์ด๊ธฐ ๋•Œ๋ฌธ์— ์šด์˜์ฒด์ œ๋ฅผ ์„ค์น˜ ํ•  ๋•Œ, C๊ฐ€ ์ž๋™์œผ๋กœ ์„ค์น˜๋˜๋Š” ๊ฒƒ์ด๋‹ค. ์ด๋ ‡๊ฒŒ C์–ธ์–ด์— ๋Œ€ํ•œ ํ™˜๊ฒฝ์ด Default์ด๋ฏ€๋กœ Java ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ์„ค์น˜ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. CMD or PowerShell์„ ์‚ฌ์šฉํ•˜๋ฉด ์šฐ๋ฆฌ ์šด์˜์ฒด์ œ์—์„œ C์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด๋ž€ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. Java ํ™˜๊ฒฝ ์„ค์น˜ 1. JDK(Java Development Kit) : ์ž๋ฐ” ๊ฐœ๋ฐœ ๋„๊ตฌ๋ฅผ ์„ค์น˜ํ•œ๋‹ค. ์ž๋ฐ”๋ฅผ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๋„๊ตฌ๋กœ์จ JDK๋ฅผ ์„ค์น˜ํ•˜์—ฌ์•ผ๋งŒ Jav.. 2024. 1. 2.
์ปดํ“จํ„ฐ์—์„œ Interface๋ž€? ๋จผ์ €, Interface์˜ ๋œป์€ ์ƒํ˜ธ ์ž‘์šฉ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. (Google ๋ฒˆ์—ญ๊ธฐ) ์ƒํ˜ธ ์ž‘์šฉ์ด๋ผ๊ณ  ํ•˜๋ฉด A์™€ B๊ฐ€ ์„œ๋กœ ๋ฌผ๊ฑด์„ ์ฃผ๊ณ  ๋ฐ›๋“ , ๋Œ€ํ™”๋ฅผ ํ•˜๋“  ์‹ธ์›€์„ ํ•˜๋“ (?) ๋‘ ๊ฐœ ์ด์ƒ์˜ ๋ฌด์–ธ๊ฐ€๊ฐ€ ์„œ๋กœ ๋ฌด์–ธ๊ฐ€๋ฅผ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ •์˜ํ•œ ๋‚ด์šฉ์ด ์ถ”์ƒ์ ์ด๋ผ๊ณ  ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ปดํ“จํ„ฐ์—์„œ๋Š” ์ด ์ถ”์ƒ์ ์ธ ๊ฐœ๋…์„ ์‚ฌ์šฉํ•œ๋‹ค. โ€ป ์ฐธ๊ณ ๋กœ Interface์˜ ๊ฐœ๋…์„ ์ •ํ™•ํžˆ ์•Œ๊ณ  ์žˆ์œผ๋ฉด SW ์˜ค๋ฅ˜, HW ์˜ค๋ฅ˜ ๋“ฑ ์ด์ ์ด ๋„ˆ๋ฌด ๋งŽ์Šต๋‹ˆ๋‹ค. ์ž‘์„ฑ์ž๋Š” ๊ตฐ๋Œ€ ํ†ต์‹ ๋ณ‘ ์ถœ์‹ ์œผ๋กœ ์ดˆ ACE์˜€์Šต๋‹ˆ๋‹ค. ๊ตฐ๋Œ€ ํ†ต์‹ ๋ณ‘์ด๋ผ๋ฉด ์ฐธ ์ค‘์š”ํ•  ๊ฒ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— ์ปดํ“จํ„ฐ์™€ ์‚ฌ๋žŒ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ƒ๊ฐํ•ด๋ณด์ž. ์ปดํ“จํ„ฐ ์‚ฌ๋žŒ ์ด ๊ธ€์„ ๋ณด๋Š” 'ํ™”๋ฉด'์€ ์ปดํ“จํ„ฐ์™€ ์‚ฌ๋žŒ๊ณผ์˜ ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. ์ปดํ“จํ„ฐ๋Š” ๊ธฐ๊ณ„ ๋ถ€ํ’ˆ์œผ๋กœ ์ „๊ธฐ์ ์ธ ์‹ ํ˜ธ 0 or 1๋กœ๋งŒ ๋™์ž‘์„ ํ•œ๋‹ค. ๊ทผ๋ฐ ์šฐ๋ฆฌ๊ฐ€ .. 2024. 1. 2.