728x90
๋ฐ˜์‘ํ˜•

Java 15

์ธํ„ฐํŽ˜์ด์Šค ( interface )

์ธํ„ฐํŽ˜์ด์Šค๋ž€? - ์ถ”์ƒ ๋ฉ”์„œ๋“œ์˜ ์ง‘ํ•ฉ - ๊ตฌํ˜„๋œ ๊ฒƒ์ด ์ „ํ˜€ ์—†๋Š” ์„ค๊ณ„๋„. ๊ป๋ฐ๊ธฐ ( ๋ชจ๋“  ๋ฉค๋ฒ„๊ฐ€ public ) ์ถ”์ƒํด๋ž˜์Šค์™€ ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ณตํ†ต์  ์ถ”์ƒ๋ฉ”์„œ๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ์ถ”์ƒํด๋ž˜์Šค์™€ ์ธํ„ฐํŽ˜์ด์Šค์˜ ์ฐจ์ด ์ถ”์ƒํด๋ž˜์Šค๋Š” ์ผ๋ฐ˜ ํด๋ž˜์Šค์ธ๋ฐ ์ถ”์ƒ๋ฉ”์„œ๋“œ๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์ƒ์„ฑ์ž๋„ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ  ๋ฉค๋ฒ„๋ณ€์ˆ˜๋„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋ฐ˜๋ฉด ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์˜ค๋กœ์ง€ ์ถ”์ƒ ๋ฉ”์„œ๋“œ, ์ƒ์ˆ˜, static๋ฉ”์„œ๋“œ, default๋ฉ”์„œ๋“œ ๋งŒ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ํ•ญ์ƒ public / static / abstract ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๋žต ๊ฐ€๋Šฅํ•˜๋‹ค. ์ผ๋ถ€๋งŒ ์จ๋„ ๋˜๊ณ  ์ „๋ถ€ ์ƒ๋žตํ•ด๋„ ๋œ๋‹ค. ์ธํ„ฐํŽ˜์ด์Šค์˜ ์ƒ์† - ์ธํ„ฐํŽ˜์ด์Šค์˜ ์กฐ์ƒ์€ ์ธํ„ฐํŽ˜์ด์Šค๋งŒ ๊ฐ€๋Šฅ ( Object ๊ฐ€ ์ตœ๊ณ  ์กฐ์ƒ์ด ์•„๋‹ˆ๋‹ค ) - ๋‹ค์ค‘ ์ƒ์†์ด ๊ฐ€๋Šฅ. ( ์ถ”์ƒ๋ฉ”์„œ๋“œ๋Š” ์ถฉ๋Œํ•ด๋„ ๋ฌธ์ œ ์—†์Œ ..

JAVA 2022.03.02

์ถ”์ƒ ํด๋ž˜์Šค, ์ถ”์ƒ ๋ฉ”์„œ๋“œ

์ถ”์ƒ ํด๋ž˜์Šค ( abstract class ) - ๋ฏธ์™„์„ฑ ์„ค๊ณ„๋„. ๋ฏธ์™„์„ฑ ๋ฉ”์„œ๋“œ( ์ถ”์ƒ ๋ฉ”์„œ๋“œ ) ๋ฅผ ๊ฐ–๊ณ  ์žˆ๋Š” ํด๋ž˜์Šค → ์ œํ’ˆ์ƒ์„ฑ ๋ถˆ๊ฐ€ - ๋‹ค๋ฅธ ํด๋ž˜์Šค ์ž‘์„ฑ์— ๋„์›€์„ ์ฃผ๊ธฐ ์œ„ํ•œ ๊ฒƒ . ์ธ์Šคํ„ด์Šค (์ œํ’ˆ) ์ƒ์„ฑ ๋ถˆ๊ฐ€ - ์ƒ์†์„ ํ†ตํ•ด ์ถ”์ƒ ๋ฉ”์„œ๋“œ๋ฅผ ์™„์„ฑํ•ด์•ผ ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ๊ฐ€๋Šฅ - ์ฝ”๋“œ์˜ ์ค‘๋ณต ์ œ๊ฑฐ ์ถ”์ƒ ๋ฉ”์„œ๋“œ ( abstract method ) - ๋ฏธ์™„์„ฑ ๋ฉ”์„œ๋“œ. ๊ตฌํ˜„๋ถ€ (๋ชธํ†ต, { } ๊ฐ€ ์—†๋Š” ๋ฉ”์„œ๋“œ - ๊ผญ ํ•„์š”ํ•˜์ง€๋งŒ ์ž์†๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒŒ ๊ตฌํ˜„๋  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ - ์ƒ์†์„ ํ†ตํ•ด ์ž์†์ด ์™„์„ฑํ•˜๊ณ  ํ˜ธ์ถœ ( ํ˜ธ์ถœํ•  ๋•Œ๋Š” ์„ ์–ธ๋ถ€๋งŒ ํ•„์š” ) ์ถ”์ƒํด๋ž˜์Šค์˜ ์ž‘์„ฑ - ์—ฌ๋Ÿฌ ํด๋ž˜์Šค์— ๊ณตํ†ต์ ์œผ๋กœ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋Š” ์ถ”์ƒํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑ or ๊ธฐ์กด ํด๋ž˜์Šค์˜ ๊ณตํ†ต ๋ถ€๋ถ„์„ ๋ฝ‘์•„ ์ถ”์ƒํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ ๋‹ค. - ์ถ”์ƒํ™”๋œ ์ฝ”๋“œ๋Š” ๊ตฌ์ฒดํ™”๋œ ์ฝ”๋“œ..

JAVA 2022.03.01

๊ธฐ๋ณธํ˜• ๋งค๊ฐœ๋ณ€์ˆ˜ / ์ฐธ์กฐํ˜• ๋งค๊ฐœ๋ณ€์ˆ˜

๊ธฐ๋ณธํ˜• ๋งค๊ฐœ๋ณ€์ˆ˜ : read only ๊ธฐ๋ณธํ˜• ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๊ฐ’์„ ์ฝ์„ ์ˆ˜๋งŒ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ’์ด ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ฐธ์กฐํ˜• ๋งค๊ฐœ๋ณ€์ˆ˜ : read & wirte ์ฐธ์กฐํ˜• ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๊ฐ’์„ ์ „๋‹ฌํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ์ฃผ์†Œ๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น ์ฃผ์†Œ์˜ ๊ฐ’์ด ๋ณ€ํ•˜๋ฉด ๊ฐ’์ด ๋ณ€ํ•œ๋‹ค. ๊ฐ’์„ ์ƒˆ๋กœ ์ž…๋ ฅ๊ฐ€๋Šฅํ•˜๋‹ค.

JAVA 2022.02.19

๋ฉ”์„œ๋“œ๋ž€ ?

๋ฉ”์„œ๋“œ๋ž€ ? 1. ์ž‘์—…๋‹จ์œ„๋กœ ๋ฌธ์žฅ๋“ค์„ ๋ฌถ์€ ๊ฒƒ 2. ์ž…๋ ฅ๋œ ๊ฐ’์„ ๋ฐ›์•„์„œ ์ฒ˜๋ฆฌํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒƒ. ๋ฉ”์„œ๋“œ์˜ ์žฅ์  1. ์ฝ”๋“œ์˜ ์ค‘๋ณต์„ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค. 2. ์ฝ”๋“œ๊ด€๋ฆฌ๊ฐ€ ์‰ฝ๋‹ค. 3. ์ฝ”๋“œ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅ. 4. ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ ์ฆ๊ฐ€ ( ๊ฐ„๊ฒฐํ•ด์ ธ์„œ ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์›€ ) ๋ฉ”์„œ๋“œ ์ž‘์„ฑ - ๋ฐ˜๋ณต์ ์œผ๋กœ ์ˆ˜ํ–‰๋˜๋Š” ์—ฌ๋Ÿฌ๋ฌธ์žฅ์„ ๋ฉ”์„œ๋“œ๋กœ ์ž‘์„ฑ - ํ•˜๋‚˜์˜ ๋ฉ”์„œ๋“œ๋Š” ํ•œ ๊ฐ€์ง€ ๊ธฐ๋Šฅ๋งŒ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์ž‘์„ฑ ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ ๋ฉ”์„œ๋“œ์ด๋ฆ„ (๊ฐ’1, ๊ฐ’2, ... ); // ๊ฐ’์ด ํ•„์š”์—†๋Š” ๋ฉ”์„œ๋“œ (void) ๋Š” ๊ฐ’์„ ๋„ฃ์ง€ ์•Š์•„๋„ ๋œ๋‹ค. ๋ฉ”์„œ๋“œ ์‹คํ–‰์— ํ•„์š”ํ•œ ๊ด„ํ˜ธ ์•ˆ์˜ ๋ณ€์ˆ˜๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜( parameter, ๋ณต์‚ฌ๋ณธ ) ๋ผ๊ณ  ํ•œ๋‹ค.

JAVA 2022.02.18

์„ ์–ธ ์œ„์น˜์— ๋”ฐ๋ฅธ ๋ณ€์ˆ˜์˜ ์ข…๋ฅ˜

1. ํด๋ž˜์Šค ์˜์—ญ : ์„ ์–ธ๋ฌธ๋งŒ ๊ฐ€๋Šฅ ( ๋ณ€์ˆ˜, ๋ฉ”์„œ๋“œ ) , ์ˆœ์„œ๋Š” ์ƒ๊ด€์—†์Œ 1-1 ์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜ 1-2 ํด๋ž˜์Šค ๋ณ€์ˆ˜ ( static ๋ณ€์ˆ˜, ๊ณต์œ ๋ณ€์ˆ˜ ) 2. ๋ฉ”์„œ๋“œ ์˜์—ญ ์ง€์—ญ๋ณ€์ˆ˜ ํด๋ž˜์Šค๋ณ€์ˆ˜๋Š” ์•ž์— static ์ด ๋ถ™๊ณ  ํ•œ๋ฒˆ๋งŒ ๋งŒ๋“ค์–ด์ง„๋‹ค. ํ•ด๋‹น ํด๋ž˜์Šค์˜ ๋ชจ๋“  ๊ฐ์ฒด (์ธ์Šคํ„ด์Šค)์—์„œ ๊ณต์œ ๋œ๋‹ค. ์‚ฌ์šฉํ•  ๋•Œ๋Š” ํด๋ž˜์Šค๋ช….๋ณ€์ˆ˜๋ช…์œผ๋กœ ํ˜ธ์ถœ ์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜๋Š” ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ์‹œ์— ์ƒ์„ฑ๋œ๋‹ค. ํ•ด๋‹น ์ธ์Šคํ„ด์Šค์—์„œ๋งŒ ์‚ฌ์šฉ๋œ๋‹ค. ์‚ฌ์šฉ ํ•  ๋•Œ ์ธ์Šคํ„ด์Šค๋ช….๋ณ€์ˆ˜๋ช…์œผ๋กœ ํ˜ธ์ถœ

JAVA 2022.02.17

Arrasys์˜ ์—ฌ๋Ÿฌ ํ•จ์ˆ˜

๋ฐฐ์—ด์˜ ๋น„๊ต์™€ ์ถœ๋ ฅ - equals(), toString() Arrays.equals( ๋ฐฐ์—ด1, ๋ฐฐ์—ด2); // 1์ฐจ์›์˜ ๋‘ ๋ฐฐ์—ด์ด ๊ฐ™์€์ง€ ํ™•์ธ true/false Arrays.equals( ๋ฐฐ์—ด1, ๋ฐฐ์—ด2); // 2์ฐจ์›์˜ ๋‘ ๋ฐฐ์—ด์ด ๊ฐ™์€์ง€ ํ™•์ธ true/false Arrays.toString( 1์ฐจ์› ๋ฐฐ์—ด ์ด๋ฆ„ ); // 1์ฐจ์› ๋ฐฐ์—ด์„ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ Arrays.deepToString( 2์ฐจ์› ๋ฐฐ์—ด ์ด๋ฆ„); // 2์ฐจ์› ๋ฐฐ์—ด์„ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ ๋ฐฐ์—ด์˜ ๋ณต์‚ฌ - copyOf(), copyOfRange() Arrays.copyOf ( ๋ฐฐ์—ด๋ช…, int ๊ฐฏ์ˆ˜); Arrays.copyOfRange ( ๋ฐฐ์—ด๋ช…, int from, int to); ex) int[] arr = {0, 1, 2, 3, 4}; int[] ..

JAVA 2022.02.15

String ํด๋ž˜์Šค์˜ ์ฃผ์š” ๋ฉ”์„œ๋“œ

String str = "ABCDE"; - charAt( int index ) : ๋ฌธ์ž์—ด์—์„œ ํ•ด๋‹น ์œ„์น˜ ( index ) ์— ์žˆ๋Š” ๋ฌธ์ž๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. char ch = str.charAt(3); System.out.println( ch ) ; // 'D'์ถœ๋ ฅ - length( ) : ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. int length = str.length(); System.out.println( length ) ; // 5 ์ถœ๋ ฅ - substring( int from, int to ) : ๋ฌธ์ž์—ด์—์„œ ํ•ด๋‹น ๋ฒ”์œ„ ( from ~ to ) ์˜ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.( to๋Š” ๋ฏธํฌํ•จ ) String sub = str.substring( 1, 4 ) System.out.println( sub ) ; // "BCD" ์ถœ๋ ฅ ..

JAVA 2022.02.15

[๋ฐฐ์—ด] ๋ฐฐ์—ด์˜ ์ถœ๋ ฅ - Arrays ํด๋ž˜์Šค

๋ฐฐ์—ด์„ ์ถœ๋ ฅํ•  ๋•Œ๋Š” System.out.println ( iArr ); ์ด ๋ฐฉ์‹์œผ๋กœ๋Š” ๋ถˆ๊ฐ€ํ•ด์„œ ( ์˜ˆ์™ธ๋กœ charํ˜• ๋ฐฐ์—ด์€ ๊ฐ€๋Šฅ ) for๋ฌธ์„ ์ด์šฉํ•˜์—ฌ ์ถœ๋ ฅํ•  ์ˆ˜๋„ ์žˆ๊ณ , Arrays ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์ถœ๋ ฅ ํ•  ์ˆ˜๋„ ์žˆ๋‹ค. ์œ„์˜ ์ถœ๋ ฅ๊ฒฐ๊ณผ๋Š” for๋ฌธ์œผ๋กœ ์ถœ๋ ฅํ•œ ๊ฒฐ๊ณผ์ด๊ณ , ์•„๋ž˜์˜ ํŒŒ๋ž€์ƒ‰ ์ค„ ์•ˆ์˜ ์ถœ๋ ฅ๊ฒฐ๊ณผ๋Š” Arrys.toString ์„ ์ด์šฉํ•˜์—ฌ ์ถœ๋ ฅํ•œ ๊ฒฐ๊ณผ์ด๋‹ค.

JAVA 2022.02.10

println ๊ณผ printf

1. ํ˜•์‹ํ™” ๋œ ์ถœ๋ ฅ - printf() - println()์˜ ๋‹จ์  : ์ถœ๋ ฅ ํ˜•์‹ ์ง€์ • ๋ถˆ๊ฐ€ - ์‹ค์ˆ˜์˜ ์ž๋ฆฌ์ˆ˜ ์กฐ์ ˆ ๋ถˆ๊ฐ€ ( ์†Œ์ˆ˜์  n ์ž๋ฆฌ ๊นŒ์ง€ ์ถœ๋ ฅํ•˜๊ธฐ ) - 10์ง„์ˆ˜๋กœ๋งŒ ์ถœ๋ ฅ๋œ๋‹ค. - printf()๋กœ ์ถœ๋ ฅํ˜•์‹ ์ง€์ •๊ฐ€๋Šฅ ex ) System.out.printf ( "%.2f", 10.0 / 3 ); // 3.33 ( ์†Œ์ˆ˜์  ๋‘˜์งธ ์ž๋ฆฌ๊นŒ์ง€ ์ถœ๋ ฅ ) System.out.printf ( "%.d", 0x1A ); // 26 ( 10์ง„์ˆ˜๋กœ ์ถœ๋ ฅ ) System.out.printf ( "%.X", 0x1A ); // 1A ( 16์ง„์ˆ˜๋กœ ์ถœ๋ ฅ ) 2. printf()์˜ ์ง€์‹œ์ž

JAVA 2022.02.09

ํƒ€์ž… ๊ฐ„์˜ ๋ณ€ํ™˜ ๋ฐฉ๋ฒ•

1. ๋ฌธ์ž์™€ ์ˆซ์ž ๊ฐ„์˜ ๋ณ€ํ™˜ ์ˆซ์ž - > ๋ฌธ์ž ex) 3 + '0' => '3' ๋ฌธ์ž -> ์ˆซ์ž ex) '3' - '0' => 3 2. ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ : "" ( ๋นˆ ๋ฌธ์ž์—ด ) ๋”ํ•ด์คŒ. ์ˆซ์ž -> ๋ฌธ์ž์—ด ex) 3 + "" => "3" ๋ฌธ์ž -> ๋ฌธ์ž์—ด ex) '3' + "" => "3" 3. ๋ฌธ์ž์—ด์„ ์ˆซ์ž๋กœ ๋ณ€ํ™˜ : ํ•จ์ˆ˜ ์‚ฌ์šฉ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜ ex) Integer.parseInt( "3" ) => 3 ์‹ค์ˆ˜๋กœ ๋ณ€ํ™˜ ex) Double.parseDouble( "3.4" ) => 3.4 4. ๋ฌธ์ž์—ด์„ ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ : charAt() ํ•จ์ˆ˜ ์‚ฌ์šฉ ex) "3".charAt(0) => '3'

JAVA 2022.02.08
728x90
๋ฐ˜์‘ํ˜•