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

Java30

[Java] ์ž๋ฐ” ์™„์ „ ์ •๋ณต_ 9์žฅ ์ž๋ฐ”์ œ์–ด์ž 1 ๐Ÿ“š ์ฑ… ์†Œ๊ฐœํ•˜๊ธฐ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ์ž๋ฐ”์™„์ „์ •๋ณต ์ฑ… ๋งํฌ!ใ„ด ๊น€๋™ํ˜• ์ง€์Œ, ์ด์ง€์Šคํผ๋ธ”๋ฆฌ์‹ฑ      ์ด ์ฑ…์„ ๊ณ ๋ฅด๊ฒŒ ๋œ ์ด์œ ๋Š” ์นœ๊ตฌ์˜ ์ถ”์ฒœ์ด์—ˆ๋‹ค. ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ ํ˜€์žˆ์–ด ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋‹ค๋Š” ์ด์œ ๋กœ ์นœ๊ตฌ๋Š” ์ด ์ฑ…์„ ๊ณจ๋ž๋‹ค๊ณ  ํ–ˆ๋‹ค. ๋‚˜๋„ ๊ทธ๋ž˜์„œ ๊ทธ๋ƒฅ ๋”ฐ๋ผ์ƒ€๋‹ค. ์‹ค์ œ๋กœ ์ฑ…์„ ์‚ดํŽด๋ณด๋‹ˆ ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ •๋ฆฌ๋˜์–ด์žˆ๋‹ค. ๋‹ค๋ฅธ ์ฑ…์€ ๋ณธ ์ ์ด ์—†์–ด ๋น„๊ต๊ฐ€ ๋ถˆ๊ฐ€ํ•˜์ง€๋งŒ, ๋‚ด ์ƒ๊ฐ์œผ๋ก  ์ฒ˜์Œ ์ž๋ฐ”๋ฅผ ๊ณต๋ถ€ํ•œ๋‹ค๋ฉด ์ด ์ฑ…์„ ๊ฐ€์ง€๊ณ  ์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์„ ๋“ฏ ํ•˜๋‹ค. ๋ชจ๋‘๋“ค ํ™”์ดํŒ…!!  ๐Ÿฐ   โœ”๏ธ   ๋ฉค๋ฒ„ ๋ฐ ์ƒ์„ฑ์ž์˜ ์ ‘๊ทผ ์ง€์ •์ž_ 280p • 4์ข…๋ฅ˜์˜ ์ ‘๊ทผ์ง€์ •์ž:  public, protected, default(ํ˜น์€ package), private  • ์ ‘๊ทผ ๋ฒ”์œ„:  public > protected > default > private์ ‘.. 2024. 12. 22.
[Java] ์ž๋ฐ” ์™„์ „ ์ •๋ณต_ 7์žฅ ํด๋ž˜์Šค ๋‚ด๋ถ€ ๊ตฌ์„ฑ ์š”์†Œ(this ํ‚ค์›Œ๋“œ์™€ this()๋ฉ”์„œ๋“œ) ๐Ÿ“š ์ฑ… ์†Œ๊ฐœํ•˜๊ธฐ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ์ž๋ฐ”์™„์ „์ •๋ณต ์ฑ… ๋งํฌ!ใ„ด ๊น€๋™ํ˜• ์ง€์Œ, ์ด์ง€์Šคํผ๋ธ”๋ฆฌ์‹ฑ      ์ด ์ฑ…์„ ๊ณ ๋ฅด๊ฒŒ ๋œ ์ด์œ ๋Š” ์นœ๊ตฌ์˜ ์ถ”์ฒœ์ด์—ˆ๋‹ค. ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ ํ˜€์žˆ์–ด ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋‹ค๋Š” ์ด์œ ๋กœ ์นœ๊ตฌ๋Š” ์ด ์ฑ…์„ ๊ณจ๋ž๋‹ค๊ณ  ํ–ˆ๋‹ค. ๋‚˜๋„ ๊ทธ๋ž˜์„œ ๊ทธ๋ƒฅ ๋”ฐ๋ผ์ƒ€๋‹ค. ์‹ค์ œ๋กœ ์ฑ…์„ ์‚ดํŽด๋ณด๋‹ˆ ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ •๋ฆฌ๋˜์–ด์žˆ๋‹ค. ๋‹ค๋ฅธ ์ฑ…์€ ๋ณธ ์ ์ด ์—†์–ด ๋น„๊ต๊ฐ€ ๋ถˆ๊ฐ€ํ•˜์ง€๋งŒ, ๋‚ด ์ƒ๊ฐ์œผ๋ก  ์ฒ˜์Œ ์ž๋ฐ”๋ฅผ ๊ณต๋ถ€ํ•œ๋‹ค๋ฉด ์ด ์ฑ…์„ ๊ฐ€์ง€๊ณ  ์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์„ ๋“ฏ ํ•˜๋‹ค. ๋ชจ๋‘๋“ค ํ™”์ดํŒ…!!  ๐Ÿฐ โœ”๏ธ   ํ•„๋“œ์™€ ์ง€์—ญ๋ณ€์ˆ˜ ์ด๋ฆ„์ด ๋‹ค๋ฅธ ๊ฒฝ์šฐ_ 253p • ํ•„๋“œ :  ํด๋ž˜์Šค์— ํฌํ•จ๋œ ๋ณ€์ˆ˜ • ์ง€์—ญ๋ณ€์ˆ˜:  ๋ฉ”์„œ๋“œ์— ํฌํ•จ๋œ ๋ณ€์ˆ˜Class A { int m; int n; void init(int a, int b) { int.. 2024. 12. 6.
[Java] ์ž๋ฐ” ์™„์ „ ์ •๋ณต_ 7์žฅ ํด๋ž˜์Šค ๋‚ด๋ถ€ ๊ตฌ์„ฑ ์š”์†Œ(ํ•„๋“œ,์ง€์—ญ๋ณ€์ˆ˜,๋ฉ”์„œ๋“œ,์ƒ์„ฑ์ž) ๐Ÿ“š ์ฑ… ์†Œ๊ฐœํ•˜๊ธฐ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ์ž๋ฐ”์™„์ „์ •๋ณต ์ฑ… ๋งํฌ!ใ„ด ๊น€๋™ํ˜• ์ง€์Œ, ์ด์ง€์Šคํผ๋ธ”๋ฆฌ์‹ฑ      ์ด ์ฑ…์„ ๊ณ ๋ฅด๊ฒŒ ๋œ ์ด์œ ๋Š” ์นœ๊ตฌ์˜ ์ถ”์ฒœ์ด์—ˆ๋‹ค. ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ ํ˜€์žˆ์–ด ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋‹ค๋Š” ์ด์œ ๋กœ ์นœ๊ตฌ๋Š” ์ด ์ฑ…์„ ๊ณจ๋ž๋‹ค๊ณ  ํ–ˆ๋‹ค. ๋‚˜๋„ ๊ทธ๋ž˜์„œ ๊ทธ๋ƒฅ ๋”ฐ๋ผ์ƒ€๋‹ค. ์‹ค์ œ๋กœ ์ฑ…์„ ์‚ดํŽด๋ณด๋‹ˆ ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ •๋ฆฌ๋˜์–ด์žˆ๋‹ค. ๋‹ค๋ฅธ ์ฑ…์€ ๋ณธ ์ ์ด ์—†์–ด ๋น„๊ต๊ฐ€ ๋ถˆ๊ฐ€ํ•˜์ง€๋งŒ, ๋‚ด ์ƒ๊ฐ์œผ๋ก  ์ฒ˜์Œ ์ž๋ฐ”๋ฅผ ๊ณต๋ถ€ํ•œ๋‹ค๋ฉด ์ด ์ฑ…์„ ๊ฐ€์ง€๊ณ  ์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์„ ๋“ฏ ํ•˜๋‹ค. ๋ชจ๋‘๋“ค ํ™”์ดํŒ…!!  ๐Ÿฐ   โœ”๏ธ   ํ•„๋“œ์™€ ์ง€์—ญ๋ณ€์ˆ˜_ 222p • ํ•„๋“œ :  ํด๋ž˜์Šค์— ํฌํ•จ๋œ ๋ณ€์ˆ˜ • ์ง€์—ญ๋ณ€์ˆ˜:  ๋ฉ”์„œ๋“œ์— ํฌํ•จ๋œ ๋ณ€์ˆ˜Class A { m๊ณผ n์€ ํ•„๋“œ int m = 1; int n = 2; void B() { k๋Š” ์ง€์—ญ๋ณ€์ˆ˜ .. 2024. 11. 21.
[Java] ์ž๋ฐ” ์™„์ „ ์ •๋ณต _6์žฅ ํด๋ž˜์Šค์™€ ๊ฐ์ฒด์˜ ๊ฐœ๋… ๐Ÿ“š ์ฑ… ์†Œ๊ฐœํ•˜๊ธฐ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ์ž๋ฐ”์™„์ „์ •๋ณต ์ฑ… ๋งํฌ!ใ„ด ๊น€๋™ํ˜• ์ง€์Œ, ์ด์ง€์Šคํผ๋ธ”๋ฆฌ์‹ฑ   ์ด ์ฑ…์„ ๊ณ ๋ฅด๊ฒŒ ๋œ ์ด์œ ๋Š” ์นœ๊ตฌ์˜ ์ถ”์ฒœ์ด์—ˆ๋‹ค. ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ ํ˜€์žˆ์–ด ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋‹ค๋Š” ์ด์œ ๋กœ ์นœ๊ตฌ๋Š” ์ด ์ฑ…์„ ๊ณจ๋ž๋‹ค๊ณ  ํ–ˆ๋‹ค. ๋‚˜๋„ ๊ทธ๋ž˜์„œ ๊ทธ๋ƒฅ ๋”ฐ๋ผ์ƒ€๋‹ค. ์‹ค์ œ๋กœ ์ฑ…์„ ์‚ดํŽด๋ณด๋‹ˆ ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ •๋ฆฌ๋˜์–ด์žˆ๋‹ค. ๋‹ค๋ฅธ ์ฑ…์€ ๋ณธ ์ ์ด ์—†์–ด ๋น„๊ต๊ฐ€ ๋ถˆ๊ฐ€ํ•˜์ง€๋งŒ, ๋‚ด ์ƒ๊ฐ์œผ๋ก  ์ฒ˜์Œ ์ž๋ฐ”๋ฅผ ๊ณต๋ถ€ํ•œ๋‹ค๋ฉด ์ด ์ฑ…์„ ๊ฐ€์ง€๊ณ  ์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์„ ๋“ฏ ํ•˜๋‹ค. ๋ชจ๋‘๋“ค ํ™”์ดํŒ…!!  ๐Ÿฐ  โœ”๏ธ   ์ ˆ์ฐจ์ง€ํ–ฅํ˜• VS ๊ฐ์ฒด์ง€ํ–ฅํ˜•_ 210p • ์ ˆ์ฐจ์ง€ํ–ฅํ˜•: ์ด์•ผ๊ธฐ๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์จ ๋‚˜๊ฐ€๋“ฏ์ด ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ์‹์ ˆ์ฐจ 1. ์ž๋™์ฐจ์˜ ์ปฌ๋Ÿฌ์™€ ์—”์ง„์˜ ์ข…๋ฅ˜๋ฅผ ์ง€์ •์ ˆ์ฐจ 2. ์šด์ „์ž์˜ ์ด๋ฆ„, ๋ฉดํ—ˆ๋ฒˆํ˜ธ๋ฅผ ์ง€์ •์ ˆ์ฐจ 3. ์šด์ „์ž๋Š” ์ž๋™์ฐจ๋ฅผ ์šด์ „ํ•œ๋‹ค.    • ๊ฐ์ฒด์ง€ํ–ฅํ˜•.. 2024. 11. 13.
[Java] ์ž๋ฐ” ์™„์ „ ์ •๋ณต_ 5์žฅ ์ฐธ์กฐ์ž๋ฃŒํ˜• (๋ฌธ์ž์—ด) ๐Ÿ“š ์ฑ… ์†Œ๊ฐœํ•˜๊ธฐ๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ์ž๋ฐ”์™„์ „์ •๋ณต ์ฑ… ๋งํฌ!ใ„ด ๊น€๋™ํ˜• ์ง€์Œ, ์ด์ง€์Šคํผ๋ธ”๋ฆฌ์‹ฑ   ์ด ์ฑ…์„ ๊ณ ๋ฅด๊ฒŒ ๋œ ์ด์œ ๋Š” ์นœ๊ตฌ์˜ ์ถ”์ฒœ์ด์—ˆ๋‹ค. ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ ํ˜€์žˆ์–ด ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋‹ค๋Š” ์ด์œ ๋กœ ์นœ๊ตฌ๋Š” ์ด ์ฑ…์„ ๊ณจ๋ž๋‹ค๊ณ  ํ–ˆ๋‹ค. ๋‚˜๋„ ๊ทธ๋ž˜์„œ ๊ทธ๋ƒฅ ๋”ฐ๋ผ์ƒ€๋‹ค. ์‹ค์ œ๋กœ ์ฑ…์„ ์‚ดํŽด๋ณด๋‹ˆ ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ •๋ฆฌ๋˜์–ด์žˆ๋‹ค. ๋‹ค๋ฅธ ์ฑ…์€ ๋ณธ ์ ์ด ์—†์–ด ๋น„๊ต๊ฐ€ ๋ถˆ๊ฐ€ํ•˜์ง€๋งŒ, ๋‚ด ์ƒ๊ฐ์œผ๋ก  ์ฒ˜์Œ ์ž๋ฐ”๋ฅผ ๊ณต๋ถ€ํ•œ๋‹ค๋ฉด ์ด ์ฑ…์„ ๊ฐ€์ง€๊ณ  ์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์„ ๋“ฏ ํ•˜๋‹ค. ๋ชจ๋‘๋“ค ํ™”์ดํŒ…!!  ๐Ÿฐ   โœ”๏ธ  ๊ฐ์ฒด ์ƒ์„ฑ์‹œ ์ฃผ์†Œ๊ฐ’_ 189p • ๊ฐ์ฒด ์•ˆ์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋ฉด ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑString str1 = new String("์•ˆ๋…•");String str2 = str1;str1 = "์•ˆ๋…•ํ•˜์„ธ์š”";System.out.println(str1);System... 2024. 10. 31.
1. ์ธํ„ฐํŽ˜์ด์Šค์™€ ๊ตฌํ˜„์ฒด ๐Ÿชฝ"ํ‹€๋ฆฐ ๋‚ด์šฉ์ด ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊น€์˜ํ•œ ์„ ์ƒ๋‹˜์˜ ์Šคํ”„๋ง ๊ธฐ๋ณธํŽธ์„ ์œ„์ฃผ๋กœ ๊ณต๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค." โ–บ ์ธํ„ฐํŽ˜์ด์Šค (๊ธฐ๋ณธ ์„ค๊ณ„๋„)public interface MemberRepository { void save(Member member); Member findById(Long memberId);}// ์ถœ์ฒ˜: 1)๊น€์˜ํ•œ์˜ ์Šคํ”„๋ง ๊ธฐ๋ณธํŽธ public interface๋ผ๊ณ  ์„ ์–ธํ•˜๋ฉด ๊ทธ๊ฒƒ์ด ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋œ๋‹ค.์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ถ”์ƒํ™” ํด๋ž˜์Šค๋กœ ์ผ๋ฐ˜์ ์ธ ๋ฉ”์„œ๋“œ, ๋ฉค๋ฒ„ ๋ณ€์ˆ˜ ๊ตฌ์„ฑ์›(์•„๋ž˜ ์ฝ”๋“œ์ฒ˜๋Ÿผ)์„ ๊ฐ€์งˆ ์ˆ˜ ์—†๋‹ค.์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ถ”์ƒ๋ฉ”์„œ๋“œ(๋งŒ๋“ค๋‹ค ๋งŒ ๊ฒƒ ๊ฐ™์€ ๋ฉ”์„œ๋“œ)์™€ ์ƒ์ˆ˜(final์„ ์ด์šฉํ•˜์—ฌ ๋ณ€ํ•˜์ง€ ์•Š๋Š” ์–ด๋–ค ๊ฐ’์„ ๋งŒ๋“œ๋Š” ๊ฒƒ)๋งŒ ๊ฐ€์ง„๋‹ค.์ถ”์ƒ๋ฉ”์„œ๋“œ๋Š” public abstruct - ๋กœ ์‹œ์ž‘ํ•˜์ง€๋งŒ, ์œ„์˜ ์ฝ”๋“œ์ฒ˜๋Ÿผ ์ƒ๋žตํ•ด.. 2024. 9. 26.