[Beyond SW] 20251023

์ด๊ฒฝ๋ฏผยท2025๋…„ 10์›” 23์ผ

ํ•œํ™”์‹œ์Šคํ…œ Beyond SW

๋ชฉ๋ก ๋ณด๊ธฐ
16/40
post-thumbnail

ํด๋ž˜์Šค

๐Ÿ’ก ์„œ๋กœ ๋‹ค๋ฅธ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ์™€ ๋ฉ”์†Œ๋“œ๋ฅผ ์ •์˜ํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ •์˜์˜ ํƒ€์ž…์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๊ฒƒ์„ ํด๋ž˜์Šค๋ผ๊ณ  ํ•œ๋‹ค. ์ฆ‰, ํด๋ž˜์Šค๋Š” ์‚ฌ์šฉ์ž ์ •์˜์˜ ์ž๋ฃŒํ˜•์ด๋‹ค.
๋‹ค์–‘ํ•œ ์ž๋ฃŒํ˜•๋“ค์„ ๋ชจ์•„์„œ ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”ํ•œ ์ž๋ฃŒํ˜•์„ ๋งŒ๋“ ๊ฒƒ

๋ณ€์ˆ˜: 1๊ฐœ์˜ ๋ณ€ํ•˜๋Š” ๊ฐ’์„ ๋‹ด๋Š” ๊ณต๊ฐ„
๋ฐฐ์—ด : ๊ฐ™์€ ์ž๋ฃŒํ˜•๋ผ๋ฆฌ์˜ ๋ฌถ์Œ


ํด๋ž˜์Šค ๋ฒ”์œ„์— ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋ฅผ ์ „์—ญ ๋ณ€์ˆ˜๋ผ๊ณ ํ•จ.

์บก์Аํ™”

์œ ์ง€๋ณด์ˆ˜์„ฑ ์ฆ๊ฐ€(๋‚ฎ์€ ๊ฒฐํ•ฉ๋„)๋ฅผ ์œ„ํ•ด ํ•„๋“œ์˜ ์ง์ ‘ ์ ‘๊ทผ์„ ์ œํ•œํ•˜๊ณ , public ๋ฉ”์†Œ๋“œ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฐ„์ ‘์ ์œผ๋กœ ์ ‘๊ทผํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค.
ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•  ์‹œ ํŠน๋ณ„ํ•œ ๋ชฉ์ ์ด ์•„๋‹Œ ์ด์ƒ ์บก์Аํ™”๊ฐ€ ๊ธฐ๋ณธ์ ์ธ ์›์น™์œผ๋กœ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค.

์ ‘๊ทผ ์ œํ•œ์ž
: ํด๋ž˜์Šค ํ˜น์€ ํด๋ž˜์Šค์˜ ๋ฉค๋ฒ„(ํ•„๋“œ, ๋ฉ”์†Œ๋“œ)์— ์ฐธ์กฐ ์—ฐ์‚ฐ์ž๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„๋ฅผ ์ œํ•œํ•˜๊ธฐ ์œ„ํ•œ ํ‚ค์›Œ๋“œ

  • public, protected, default, private
    (๋‹จ, ํด๋ž˜์Šค ์„ ์–ธ ์‹œ์—๋Š” public, default๋งŒ ์‚ฌ์šฉ๊ฐ€๋Šฅ)

์ถ”์ƒํ™”

์œ ์—ฐ์„ฑ์„ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•ด ๊ณตํ†ต์ ์ธ ๊ฒƒ์„ ์ถ”์ถœํ•˜๊ณ  ๊ณตํ†ต์ ์ด์ง€ ์•Š์€ ๊ฒƒ์„ ์ œ๊ฑฐ
์ถ”์ƒํ™” ๊ณผ์ •์„ ํ†ตํ•ด ๊ฐ์ฒด(Object)๊ฐ€ ๋„์ถœ์ด ๋˜๋ฉฐ, ์ด๋Ÿฌํ•œ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ํด๋ž˜์Šค๋ฅผ ์„ค๊ณ„
ํ˜„์‹ค์„ธ๊ณ„์˜ ๋ณต์žกํ•œ ์‚ฌ๊ฑด์„ ๋‹จ์ˆœํ™”ํ•˜์—ฌ ์ƒˆ๋กœ์šด ๊ฐ์ฒด ์ง€ํ–ฅ ์„ธ๊ณ„๋ฅผ ์ฐฝ์กฐํ•ด๋‚˜๊ฐ€๋Š” ๊ณผ์ •
์ถ”์ƒํ™”๋ž€?
๊ณตํ†ต๋œ ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜๊ณ  ๊ณตํ†ต๋˜์ง€ ์•Š๊ณ  ๋ถˆํ•„์š”ํ•œ ๋ถ€๋ถ„์„ ์ œ๊ฑฐํ•œ๋‹ค๋Š” ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๋ฉฐ, ์ถ”์ƒํ™”์˜ ๋ชฉ์ ์€
์œ ์—ฐ์„ฑ์„ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•จ์ด๋‹ค.
์œ ์—ฐ์„ฑ ํ™•๋ณด๋Š” ์—ฌ๋Ÿฌ ๊ณณ์— ์ ์šฉ๋  ์ˆ˜ ์žˆ๋Š” ์œ ์—ฐํ•œ ๊ฐ์ฒด๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, ์žฌ์‚ฌ์šฉ์„ฑ์ด ๋†’์•„์งˆ ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค.
(์šฐ๋ฆฌ๋Š” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ถ”์ƒํ™”๋ฅผ ์ด๋ฃจ์—ˆ์ง€๋งŒ ๊ทธ๋ ‡๊ฒŒ ์ถ”์ƒํ™”๋œ ํด๋ž˜์Šค๋กœ ์œ ์—ฐํ•œ ๊ฐ์ฒด๋“ค์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.)

        1. ํ˜‘๋ ฅ(์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๊ตฌํ˜„์— ํ•„์š”ํ•œ ๊ฐ์ฒด๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ)
        2. ์ฑ…์ž„(๊ฐ์ฒด๊ฐ€ ํ˜‘๋ ฅ์— ์ฐธ์—ฌํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜ํ–‰ํ•ด์•ผํ•  ์ฑ…์ž„(๊ธฐ๋Šฅ))
        3. ์—ญํ• (๊ฐ์ฒด์˜ ์ฑ…์ž„์ด ๋ชจ์—ฌ ํ•˜๋‚˜์˜ ์—ญํ• ์ด ๋œ๋‹ค.)

๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ

๊ฐ์ฒด๊ฐ€ ์„œ๋กœ ์ƒํ˜ธ์ž‘์šฉ์„ ํ•˜๋ฉฐ ์‚ฌ๊ฑด์ด ์ผ์–ด๋‚œ๋‹ค๋Š” ๊ฐœ๋…์€ ํ˜„์‹ค ์„ธ๊ณ„์™€ ๋‹ฎ์•„์žˆ์ง€๋งŒ, ๋‹ค๋ฅธ ์ ์€ ๋ฌด์ƒ๋ฌผ์ด๋‚˜ ๊ฐœ๋… ๊ฐ™์€ ์กด์žฌ๋“ค๋„ ํ•˜๋‚˜์˜ ์ฃผ์ฒด๋กœ ๋ณธ์ธ์˜ ์ƒํƒœ๋ฅผ ์Šค์Šค๋กœ ์ œ์–ดํ•˜๊ณ  ํ–‰๋™ํ•œ๋‹ค
(์˜์ธํ™” ๊ธฐ๋ฒ• โ†’ ์บก์Аํ™”๋ฅผ ์˜๋ฏธํ•œ๋‹ค.)
๋˜ํ•œ ๋ชจ๋“  ๊ฐ์ฒด๋Š” ๋„ˆ๋ฌด ๋งŽ์€ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ์•„๋‹Œ ์ ์ ˆํ•œ ์ฑ…์ž„์„ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋งŒ์•ฝ ๋„ˆ๋ฌด ๋งŽ์€ ๊ฒƒ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ์ฑ…์ž„์ด ์กด์žฌํ•œ๋‹ค๋ฉด ์ด๋Š” ๋˜ ๋‹ค๋ฅธ ๊ฐ์ฒด์—๊ฒŒ ์ฑ…์ž„์„ ๋‚˜๋ˆˆ๋‹ค. (๋‹จ์ผ ์ฑ…์ž„์˜ ์›์น™)

๋‹จ์ผ ์ฑ…์ž„์˜ ์›์น™ : ํ•œ ํด๋ž˜์Šค๋Š” ํ•˜๋‚˜์˜ ์ฑ…์ž„๋งŒ ๊ฐ€์ ธ์•ผ ํ•œ๋‹ค.

๊ฐ์ฒด์ง€ํ–ฅ์—์„œ ์ค‘์š”ํ•œ ๊ฒƒ์€ ํ–‰์œ„(๋ฉ”์†Œ๋“œ)์ด์ง€๋งŒ, ๋ฐ์ดํ„ฐ๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ์ถ”์ƒํ™” ํ•˜์—ฌ ๊ฐ์ฒด ๋ฐ ํด๋ž˜์Šค๋ฅผ ์„ค๊ณ„ํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์กด์žฌํ•œ๋‹ค. ๋Œ€ํ‘œ์ ์œผ๋กœ DTO ๊ฐ™์€ ํด๋ž˜์Šค๊ฐ€ ์žˆ๋‹ค.

์ƒ์„ฑ์ž

public StudentVO(int grade, int classroom, String name, double height, char gender) {
        this.grade = grade;
        this.classroom = classroom;
        this.name = name;
        this.height = height;
        this.gender = gender;
    }

์„ค์ •์ž(setter) : ํ•„๋“œ ๊ฐ’ ๋ณ€๊ฒฝ
:set

 public void setNumber(int number) {
        this.number = number;
    }

์ ‘๊ทผ์ž(getter) : ํ•„๋“œ ๊ฐ’ ํ™•์ธ (์ถœ๋ ฅ์— ์“ฐ์ž„)
:get

 public int getNumber() {
        return number;
    }

์ถœ๋ ฅํ• ๋•Œ

System.out.println(ed.getNumber());

0๊ฐœ์˜ ๋Œ“๊ธ€