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

์ „์ฒด ๊ธ€

(79)
์ž๋ฐ”ํ”„๋กœ๊ทธ๋ž˜๋ฐ 7์ฃผ์ฐจ ์ •๋ฆฌ ์ˆ˜์—…๋‚ ์งœ/์ •๋ฆฌ๋‚ ์งœ 2022.04.19/2022.04.25 ํ•™์Šต์ฃผ์ œ 09 ์ธํ„ฐํŽ˜์ด์Šค, ๋žŒ๋‹ค์‹, ํŒจํ‚ค์ง€ ํ•™์Šต๋‚ด์šฉ 09 ์ธํ„ฐํŽ˜์ด์Šค, ๋žŒ๋‹ค์‹, ํŒจํ‚ค์ง€ Interface ์„œ๋กœ ๋‹ค๋ฅธ ์ •์น˜๋“ค์ด ์—ฐ๊ฒฐ๋˜์–ด ์ƒํ˜ธ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๊ทœ๊ฒฉ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋งž์ง€ ์•Š์œผ๋ฉด ์—ฐ๊ฒฐ ๋ถˆ๊ฐ€ โ€ป ์ถ”์ƒ ํด๋ž˜์Šค๋ณด๋‹ค ๋” ์ถ”์ƒ์ ์ธ ํด๋ž˜์Šค (์ถ”์ƒ ํด๋ž˜์Šค๋Š” ๊ฐ์ฒด ์ƒ์„ฑ ๋ถˆ๊ฐ€ → ์ƒ์†์šฉ) ์ž๋ฐ” ์ธํ„ฐํŽ˜์ด์Šค - ํด๋ž˜์Šค ์‚ฌ์ด์˜ ์ƒํ˜ธ ์ž‘์šฉ์˜ ๊ทœ๊ฒฉ (์ฝ”๋”ฉ์˜ ๋‹จ์œ„๊ฐ€ ํด๋ž˜์Šค์ด๋ฏ€๋กœ ํด๋ž˜์Šค์™€ ํด๋ž˜์Šค ์‚ฌ์ด์˜ ์ƒํ˜ธ ์ž‘์šฉ์˜ ๊ทœ๊ฒฉ์„ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ) ์ธํ„ฐํŽ˜์ด์Šค์˜ ์˜ˆ: ์Šค๋งˆํŠธ ํ™ˆ ์‹œ์Šคํ…œ ์ธํ„ฐํŽ˜์ด์Šค์˜ ์ •์˜ public interface ์ธํ„ฐํŽ˜์ด์Šค_์ด๋ฆ„ { ๋ฐ˜ํ™˜ํ˜• ์ถ”์ƒ๋ฉ”์†Œ๋“œ1(...);// ์ธํ„ฐํŽ˜์ด์Šค์—๋Š” ๋ชธ์ฒด๊ฐ€ ์—†๋Š” ์ถ”์ƒ ๋ฉ”์†Œ๋“œ๋งŒ ์ •์˜ ๋ฐ˜ํ™˜ํ˜• ์ถ”์ƒ๋ฉ”์†Œ๋“œ2(...); ... } // ์˜ˆ pu..
์ž๋ฐ”ํ”„๋กœ๊ทธ๋ž˜๋ฐ 6์ฃผ์ฐจ ์ •๋ฆฌ ์ˆ˜์—…๋‚ ์งœ/์ •๋ฆฌ๋‚ ์งœ 2022.04.12/2022.04.16 ํ•™์Šต์ฃผ์ œ 08 GUI ํ•™์Šต๋‚ด์šฉ 08 GUI - 3๊ฐ€์ง€ ๋ฐฐ์น˜๊ด€๋ฆฌ์ž์™€ 1๊ฐ€์ง€ ๋ฐฐ์น˜๋ฐฉ์‹(๋ฐฐ์น˜๊ด€๋ฆฌ์ž ์‚ฌ์šฉx) ๋ฐฐ์น˜๊ด€๋ฆฌ์ž(Layout manager) ์ปจํ…Œ์ด๋„ˆ ์•ˆ์— ์กด์žฌํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ์˜ ์œ„์น˜์™€ ํฌ๊ธฐ๋ฅผ ์ž๋™์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ์ฒด ์ ˆ๋Œ€ ์œ„์น˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปดํฌ๋„ŒํŠธ๋“ค์ด ๋ฐฐ์น˜๋  ๊ฒฝ์šฐ, ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์˜๋„ํ•œ ๋ฐ”์™€๋Š” ๋‹ค๋ฅธ๊ฒŒ ๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฐฐ์น˜๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™ํ™”ํ•œ๋‹ค. FlowLayout ์ปดํฌ๋„ŒํŠธ๋“ค์„ ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋ฐฐ์น˜ํ•œ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ์ •๋ ฌ ๋ฐฉ๋ฒ•: ์ค‘์•™ ์ •๋ ฌ ํŒจ๋„๊ณผ ์• ํ”Œ๋ฆฟ์˜ ๋””ํดํŠธ ๋ฐฐ์น˜ ๊ด€๋ฆฌ์ž setComponentOrientation() / applyComponentOrientation() ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐ์น˜ ๋ฐฉํ–ฅ์„ ์„ค์ •ํ•œ๋‹ค. → ์˜ˆ) pane..
์ž๋ฐ”ํ”„๋กœ๊ทธ๋ž˜๋ฐ 5์ฃผ์ฐจ ์ •๋ฆฌ ์ˆ˜์—…๋‚ ์งœ/์ •๋ฆฌ๋‚ ์งœ 2022.04.05/2022.04.09 ํ•™์Šต์ฃผ์ œ 08 GUI ํ•™์Šต๋‚ด์šฉ 08 GUI GUI(๊ทธ๋ž˜ํ”ฝ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค) → GUI๋Š” ์ปดํฌ๋„ŒํŠธ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค. ์ปดํฌ๋„ŒํŠธ: ๋ ˆ์ด๋ธ”, ๋ฒ„ํŠผ, ํ…์ŠคํŠธ ํ•„๋“œ์™€ ๊ฐ™์€ GUI๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ธฐ๋ณธ์ ์ธ ๋นŒ๋”ฉ ๋ธ”๋ก. (์œˆ๋„์šฐ ์‹œ์Šคํ…œ์—์„œ๋Š” ์ปจํŠธ๋กค์ด๋ผ๊ณ ๋„ ๋ถ€๋ฅธ๋‹ค.) ์ž๋ฐ”์—์„œ๋Š” ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋„ ๊ฐ์ฒด๋กœ ๋งŒ๋“ค์–ด์ง„๋‹ค. ์ž๋ฐ” GUI์˜ ์ข…๋ฅ˜ AWT(Abatract Windows Toolkit) ์ดˆ๊ธฐ ์ž๋ฐ” ๋ฒ„์ „์—์„œ ์ œ๊ณตํ–ˆ๋˜ GUI ์šด์˜ ์ฒด์ œ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์ž์›์„ ์ด์šฉํ•ด ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ ์žฅ์ : ์—ฌ๋Ÿฌ ์šด์˜ ์ฒด์ œ์—์„œ ์‰ฝ๊ฒŒ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Œ(→์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ์ด ๊ฐ€๋ณ๊ณ , ์ž‘์Œ) ๋‹จ์ : ์‹คํ–‰๋˜๋Š” ์šด์˜ ์ฒด์ œ์— ๋”ฐ๋ผ ์ปดํฌ๋„ŒํŠธ์˜ ๋ชจ์Šต์ด ๋‹ฌ๋ผ์ง ์Šค์œ™(SWING) ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์ž๋ฐ”๋กœ ์ž‘์„ฑ๋˜์–ด ์žˆ์Œ ..
์ž๋ฐ”ํ”„๋กœ๊ทธ๋ž˜๋ฐ 4์ฃผ์ฐจ ์ •๋ฆฌ ์ˆ˜์—…๋‚ ์งœ/์ •๋ฆฌ๋‚ ์งœ 2022.03.29/2022.04.03 ํ•™์Šต์ฃผ์ œ 07 ์ƒ์† ํ•™์Šต๋‚ด์šฉ 07 ์ƒ์† ์ƒ์†(inheritance): ๊ธฐ์กด์— ์กด์žฌํ•˜๋Š” ํด๋ž˜์Šค๋กœ๋ถ€ํ„ฐ ์ฝ”๋“œ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ด์–ด๋ฐ›๊ณ  ์ž์‹ ์ด ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ธฐ๋ฒ• ์ƒ์†์˜ ํ˜•์‹ ์ž๋ฐ”์—์„œ์˜ ์ƒ์†์€ ํด๋ž˜์Šค ์ด๋ฆ„ ๋’ค์— extends๋ฅผ ์จ์ฃผ๊ณ  ๋ถ€๋ชจ ํด๋ž˜์Šค ์ด๋ฆ„์€ ์ ์–ด์ค€๋‹ค. โ€ป extends: ํ™•์žฅ(๋˜๋Š” ํŒŒ์ƒ) → ๋ถ€๋ชจ ํด๋ž˜์Šค๋ฅผ ํ™•์žฅํ•˜์—ฌ ์ž์‹ ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•œ๋‹ค๋Š” ์˜๋ฏธ. class Childclass extends Parentclass// Childclass: ์ž์‹or์„œ๋ธŒํด๋ž˜์Šค, Parentclass: ๋ถ€๋ชจor์ˆ˜ํผํด๋ž˜์Šค { // ํ•„๋“œ์™€ ๋ฉ”์†Œ๋“œ ์ถ”๊ฐ€ } ๋”๋ณด๊ธฐ ๋ฌด์—‡์ด ์ƒ์†์ด ๋˜๋Š”๊ฐ€? ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ ํ•„๋“œ์™€ ๋ฉ”์†Œ๋“œ๊ฐ€ ์ž์‹ ํด๋ž˜์Šค๋กœ ์ƒ์†๋œ๋‹ค. ๋”ฐ๋ผ์„œ ์ž์‹ ํด๋ž˜์Šค๋Š” ๋ถ€๋ชจ ..
์ž๋ฐ” ๊ณต๋ถ€ ์ค‘ ๊ถ๊ธˆํ•œ ์  - print์™€ println์˜ ์ฐจ์ด https://moon1226.tistory.com/12 JAVA print, printf, println ์ฐจ์ด์  print : ๊ด„ํ˜ธ์•ˆ ๋‚ด์šฉ์„ ๋‹จ์ˆœํžˆ ์ถœ๋ ฅ. ๊ฐœํ–‰๋ฌธ์ž(=์ค„๋ฐ”๊ฟˆ๋ฌธ์ž=\n) ํฌํ•จ์•ˆ๋จ. printf : C์—์„œ์˜ printf์™€ ๋™์ผ. %d, %s ๋“ฑ์„ ์“ฐ๊ธฐ์œ„ํ•ด ์‚ฌ์šฉ. ๊ฐœํ–‰๋ฌธ์ž ํฌํ•จX println : ๊ด„ํ˜ธ์•ˆ ๋‚ด์šฉ์„ ์ถœ๋ ฅํ•œ ํ›„ ๋งˆ์ง€๋ง‰์— ๊ฐœํ–‰๋ฌธ moon1226.tistory.com - Scanner ํด๋ž˜์Šค https://st-lab.tistory.com/92 ์ž๋ฐ” [JAVA] - ์Šค์บ๋„ˆ(Scanner) ํด๋ž˜์Šค์™€ ์ž…๋ ฅ ์ž๋ฐ”๋ฅผ ์ฒ˜์Œ ๋ฐฐ์šธ ๋•Œ ์•„๋งˆ ๋Œ€๋ถ€๋ถ„์€ ํ‚ค๋ณด๋“œ๋กœ ์ž…๋ ฅ๋ฐ›๊ธฐ ์œ„ํ•ด Scanner ๋ผ๋Š” ํด๋ž˜์Šค๋ฅผ ์ผ์„ ๊ฒƒ์ด๋‹ค. ์ž๋ฐ” ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ์–ธ์–ด๋“ค์€ ๊ฐ๊ฐ์˜ ์ž…๋ ฅ๋ฐฉ์‹์ด..
์ž๋ฐ”ํ”„๋กœ๊ทธ๋ž˜๋ฐ 3์ฃผ์ฐจ ์ •๋ฆฌ ์ˆ˜์—…๋‚ ์งœ/์ •๋ฆฌ๋‚ ์งœ 2022.03.22 / 2022.03.27 ํ•™์Šต์ฃผ์ œ - ๊ฐ์ฒด์ง€ํ–ฅ 05 ํด๋ž˜์Šค, ๊ฐ์ฒด, ๋ฉ”์†Œ๋“œ 06 ํด๋ž˜์Šค, ๋ฉ”์†Œ๋“œ ์‹ฌ์ธต์—ฐ๊ตฌ ํ•™์Šต๋‚ด์šฉ 05 ํด๋ž˜์Šค, ๊ฐ์ฒด, ๋ฉ”์†Œ๋“œ ๊ฐ์ฒด(Object) ์ƒํƒœ(state): ๊ฐ์ฒด์˜ ํŠน์ง•(์†์„ฑ) ๋™์ž‘(behavior): ๊ฐ์ฒด์˜ ํ–‰๋™(๊ธฐ๋Šฅ) ์ƒํƒœ → ๋ฉค๋ฒ„ ๋ณ€์ˆ˜ (์ž๋ฐ” ์šฉ์–ด: ํ•„๋“œ) ๋™์ž‘, ๊ธฐ๋Šฅ, ํ–‰์œ„ → ๋ฉค๋ฒ„ ํ•จ์ˆ˜ (์ž๋ฐ” ์šฉ์–ด: ๋ฉ”์†Œ๋“œ) ํด๋ž˜์Šค ํด๋ž˜์Šค: ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ์„ค๊ณ„๋„ ๊ฐ์ฒด: ํด๋ž˜์Šค์˜ instance ๋”๋ณด๊ธฐ - ํด๋ž˜์Šค๋Š” ๊ฐ์ฒด๋ฅผ ์ฐ์–ด๋‚ด๋Š” ํ‹€๊ณผ ๊ฐ™๋‹ค. - ํด๋ž˜์Šค๋Š” ์‹คํ–‰์ฝ”๋“œ๊ฐ€ ์•„๋‹˜ → ๋ฐ˜๋“œ์‹œ ๊ฐ์ฒด ์ƒ์„ฑ์„ ํ•ด์•ผ ํ•จ ํด๋ž˜์Šค์˜ ๊ตฌ์กฐ class ํด๋ž˜์Šค์ด๋ฆ„ { ์ž๋ฃŒํ˜• ํ•„๋“œ1; ์ž๋ฃŒํ˜• ํ•„๋“œ2; ... ๋ฐ˜ํ™˜ํ˜• ๋ฉ”์†Œ๋“œ1()...} ๋ฐ˜ํ™˜ํ˜• ๋ฉ”์†Œ๋“œ2()...} ... }// C++..
์ž๋ฐ”ํ”„๋กœ๊ทธ๋ž˜๋ฐ 2์ฃผ์ฐจ ์ •๋ฆฌ ์ˆ˜์—…๋‚ ์งœ / ์ •๋ฆฌ๋‚ ์งœ 2022.03.15 / 2022.03.19-20 ํ•™์Šต ์ฃผ์ œ 02 ์ž๋ฐ” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ์ดˆ 03 ์„ ํƒ๊ณผ ๋ฐ˜๋ณต 04 ๋ฐฐ์—ด ํ•™์Šต ๋‚ด์šฉ Eclips์—์„œ ๊ธฐ์กด ํŒŒ์ผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ File → Import → General > Existing Projects into Workspace → Browse์—์„œ ํŒŒ์ผ ์ฐพ๊ธฐ (Projects ๋‚ด โ–ก์— ์ฒดํฌ ํ‘œ์‹œํ•ด์•ผ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ์Œ) 02 ์ž๋ฐ” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ์ดˆ Hello ์˜ˆ์ œ ๋ถ„์„ public class Hello{ public static void main(String[] arg){ System.out.println("Hello World!"); } } 01~05: ํด๋ž˜์Šค๋ฅผ ์ •์˜ํ•˜๋Š” ๋ฌธ์žฅ 02~04: ๋ฉ”์†Œ๋“œ๋ฅผ ์ •์˜ํ•˜๋Š” ๋ฌธ์žฅ ์†Œ์Šค ํŒŒ์ผ๊ณผ ํด๋ž˜์Šค ์ด๋ฆ„ ํŒŒ์ผ๋ช…๊ณผ pu..