๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ€ Java/์ž๋ฐ”์™„์ „์ •๋ณต

[Java] ์ž๋ฐ” ์™„์ „ ์ •๋ณต_ 2์žฅ ์ž๋ฃŒํ˜•

by ._.sori 2024. 7. 2.

 

๐Ÿ“š ์ฑ… ์†Œ๊ฐœํ•˜๊ธฐ

๋‚ด๊ฐ€ ์‚ฌ์šฉํ•œ ์ž๋ฐ”์™„์ „์ •๋ณต ์ฑ… ๋งํฌ!
ใ„ด ๊น€๋™ํ˜• ์ง€์Œ, ์ด์ง€์Šคํผ๋ธ”๋ฆฌ์‹ฑ

 

: ์ถœ์ฒ˜ ์˜ˆ์Šค24 ํ™ˆํŽ˜์ด์ง€

  


์ด ์ฑ…์„ ๊ณ ๋ฅด๊ฒŒ ๋œ ์ด์œ ๋Š” ์นœ๊ตฌ์˜ ์ถ”์ฒœ์ด์—ˆ๋‹ค. ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ ํ˜€์žˆ์–ด ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋‹ค๋Š” ์ด์œ ๋กœ ์นœ๊ตฌ๋Š” ์ด ์ฑ…์„ ๊ณจ๋ž๋‹ค๊ณ  ํ–ˆ๋‹ค. ๋‚˜๋„ ๊ทธ๋ž˜์„œ ๊ทธ๋ƒฅ ๋”ฐ๋ผ์ƒ€๋‹ค. ์‹ค์ œ๋กœ ์ฑ…์„ ์‚ดํŽด๋ณด๋‹ˆ ๊ต‰์žฅํžˆ ๊ผผ๊ผผํ•˜๊ฒŒ ์ •๋ฆฌ๋˜์–ด์žˆ๋‹ค. ๋‹ค๋ฅธ ์ฑ…์€ ๋ณธ ์ ์ด ์—†์–ด ๋น„๊ต๊ฐ€ ๋ถˆ๊ฐ€ํ•˜์ง€๋งŒ, ๋‚ด ์ƒ๊ฐ์œผ๋ก  ์ฒ˜์Œ ์ž๋ฐ”๋ฅผ ๊ณต๋ถ€ํ•œ๋‹ค๋ฉด ์ด ์ฑ…์„ ๊ฐ€์ง€๊ณ  ์ถฉ๋ถ„ํžˆ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์„ ๋“ฏ ํ•˜๋‹ค. ๋ชจ๋‘๋“ค ํ™”์ดํŒ…!!

 

 

๐Ÿฐ

 


 

โœ”๏ธ  ์ž๋ฃŒํ˜• ์„ ์–ธํ•˜๊ธฐ_ 55p

// ์ž๋ฃŒํ˜• ๋ณ€์ˆ˜ = ๊ฐ’;

int a = 3;
String b = "mybymine";

 

 

 ์ž๋ฃŒํ˜•

: ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์€ ๋ชฉ์ ์— ๋”ฐ๋ผ ํฌ๊ธฐ์™€ ํŠน์ง•์„ ๋‚˜๋ˆ ์ค€๋‹ค.

๊ธฐ๋ณธ์ž๋ฃŒํ˜• : boolean, byte, short, int, long, chr
์ฐธ์กฐ์ž๋ฃŒํ˜• : ๋ฐฐ์—ด, ํด๋ž˜์Šค, ์ธํ„ฐํŽ˜์ด์Šค

 

 

• ๋ณ€์ˆ˜

: ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ๋ถ€์—ฌํ•˜๋Š” ์ด๋ฆ„

์‚ฌ๋ฌผํ•จ์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ–ˆ์„์‹œ, ์‚ฌ๋ฌผํ•จ์€ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๊ทธ ์‚ฌ๋ฌผํ•จ์— ๋ถ€์—ฌ๋œ ๋ฒˆํ˜ธ๋‚˜ ๋ฌธ์ž๊ฐ€ ๋ณ€์ˆ˜๊ฐ€ ๋œ๋‹ค.

 

์ฃผ์˜์‚ฌํ•ญ
(1) ์ž๋ฃŒํ˜•์€ ๋ฐ˜๋“œ์‹œ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ์„ ์–ธํ•œ๋‹ค.
(2) ์ž๋ฃŒํ˜•์€ ๋ฐ˜๋“œ์‹œ ํ•œ ๋ฒˆ๋งŒ ์„ ์–ธํ•œ๋‹ค.

 

 

 ๊ฐ’

: ๋ณ€์ˆ˜์— ์ €์žฅ๋˜๋Š” ๊ฐ’

 

 

 


 

 

 

โœ”๏ธ  ์ด๋ฆ„ ์ž‘์„ฑ์‹œ ์ฃผ์˜์‚ฌํ•ญ_ 59p

1. ํŠน์ˆ˜ ๋ฌธ์ž๋Š” ๋ฐ‘์ค„(_)๊ณผ ๋‹ฌ๋Ÿฌ($) ํ‘œ๊ธฐ๋งŒ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค.
2. ์•„๋ผ๋น„์•„ ์ˆซ์ž๋Š” ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‚˜ ์ฒซ๋ฒˆ์งธ ์ž๋ฆฌ๋Š” ์•ˆ๋œ๋‹ค.
3. ์ž๋ฐ”์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์˜ˆ์•ฝ์–ด(public, int, static ๋“ฑ)๋Š” ์‚ฌ์šฉ๋ถˆ๊ฐ€ํ•˜๋‹ค.

 

 

 

  ๋ณ€์ˆ˜๋ช…์„ ์ง€์„ ๋•Œ ๊ถŒ์žฅ ์‚ฌํ•ญ

: ๋‚™ํƒ€ํ‘œ๊ธฐ๋ฒ•

int ourClassNum;

 

 

  ์ƒ์ˆ˜๋ช…์„ ์ง€์„ ๋•Œ ๊ถŒ์žฅ ์‚ฌํ•ญ

: ์ƒ์ˆ˜๋Š” ๋ณ€์ˆ˜์™€ ๊ตฌ๋ถ„์ง“๊ธฐ์œ„ํ•ด ๋ชจ๋‘ ๋Œ€๋ฌธ์ž๋กœ ์‚ฌ์šฉ

final int MY_DATA;

 

 

Q. ์ƒ์ˆ˜์™€ ๋ณ€์ˆ˜์˜ ์ฐจ์ด๋Š” ๋ฌด์—‡์ผ๊นŒ?
A. ์ƒ์ˆ˜๋Š” ๋ณ€ํ•  ์ˆ˜ ์—†๋Š”, ๊ณ ์ •๋œ ๊ฐ’์„ ์˜๋ฏธํ•˜๊ณ  ๋ณ€์ˆ˜๋Š” ๋ณ€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ’์„ ๋งํ•œ๋‹ค.
    ๊ทธ๋ ‡๊ธฐ์— ๋ณ€์ˆ˜ ์•ž์— final์„ ๋ถ™์ด๋ฉด ์ƒ์ˆ˜๊ฐ€ ๋œ๋‹ค.

 

 

โžฐใ…ค final์— ๋Œ€ํ•˜์—ฌ...

final์€ ๋ณ€์ˆ˜, ๋ฉ”์†Œ๋“œ, ํด๋ž˜์Šค์— ๋ถ™์ผ ์ˆ˜ ์žˆ๋‹ค.
(1) ๋ณ€์ˆ˜์— ๋ถ™์œผ๋ฉด ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋Š” ๊ฐ’, ์ƒ์ˆ˜๊ฐ€ ๋œ๋‹ค.
(2) ๋ฉ”์†Œ๋“œ์— ๋ถ™์œผ๋ฉด override๊ฐ€ ์ œํ•œ๋˜๋Š”๋ฐ, ์ƒ์†๋ฐ›์€ ํด๋ž˜์Šค์—์„œ ํ•ด๋‹น ๋ฉ”์†Œ๋“œ๋ฅผ ์ˆ˜์ •ํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ํ•œ๋‹ค.
(3) ํด๋ž˜์Šค์— ๋ถ™์œผ๋ฉด ํ•ด๋‹น ํด๋ž˜์Šค๋Š” ์ƒ์†์ด ๋ถˆ๊ฐ€ํ•˜๋‹ค.

ใ€ฐ๏ธ  final ๋ฉ”์†Œ๋“œ ๊ด€๋ จ ์˜ˆ์‹œ ใ€ฐ๏ธ 
class A {
    final void display() {
        System.out.println("mybymine");
    }
}

class B extends A {
    void display() {
        System.out.println("java velog!");
    }
}โ€‹


class A์— final void display๊ฐ€ ๋ถ™์œผ๋ฉด์„œ ์ด ๊ฐ’์€ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๊ฒŒ ๋๋‹ค.
๊ทธ๋ž˜์„œ class B์—์„œ A๋ฅผ ์ƒ์†๋ฐ›์•„ display( )๊ฐ’์„ ๋ฐ”๊ฟ” ์ถœ๋ ฅํ•˜๋ คํ•ด๋„ final์ด ๋ถ™์–ด์žˆ๊ธฐ ๋•Œ๋ฌธ์— 
override์— ์‹คํŒจํ•˜๊ฒŒ ๋œ๋‹ค.

 

ใ…ค- final ๊ด€๋ จ ์ •๋ณด ์ถœ์ฒ˜

 

[Java] final ํ‚ค์›Œ๋“œ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž

์•ˆ๋…•ํ•˜์„ธ์š”. ์˜ค๋Š˜์€ ์—ฌ๋Ÿฌ๋ถ„๋“ค๊ณผ java์˜ final ํ‚ค์›Œ๋“œ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. final final ํ‚ค์›Œ๋“œ๋Š” ๋ณ€์ˆ˜(variable), ๋ฉ”์„œ๋“œ(method), ๋˜๋Š” ํด๋ž˜์Šค(class)์— ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด final ํ‚ค์›Œ๋“œ๋Š” ์–ด๋–ค

sabarada.tistory.com

 

 

 

โžฐใ…ค๊ทธ๋ ‡๋‹ค๋ฉด override๋Š” ๋ฌด์—‡์ธ๊ฐ€?  

์ƒ์œ„ ํด๋ž˜์Šค์— ์ •์˜๋œ ๋ณ€์ˆ˜ ํ˜น์€ ๋ฉ”์†Œ๋“œ๋ฅผ ํ•˜์œ„ ํด๋ž˜์Šค์—์„œ ์žฌ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
(1) ์˜ค๋ฒ„๋ผ์ด๋”ฉ(overriding)์€ ์ƒ์† ๊ด€๊ณ„์—์„œ๋งŒ ๊ฐ€๋Šฅํ•˜๊ณ 
(2) ์˜ค๋ฒ„๋กœ๋”ฉ(overloading)์€ ๋™์ผํด๋ž˜์Šค ๋˜๋Š” ์ƒ์† ๊ด€๊ณ„์—์„œ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

- override ๊ด€๋ จ ์ •๋ณด ์ถœ์ฒ˜

 

์˜ค๋ฒ„๋ผ์ด๋“œ

  Override, Overriding   ์˜ค๋ฒ„๋ผ์ด๋“œ, ์˜ค๋ฒ„๋ผ์ด๋”ฉ(2022-02-02)

www.ktword.co.kr

 

 

 


 

 

โœ”๏ธ  ์ž๋ฃŒํ˜•์˜ ์ข…๋ฅ˜_ 63p

 

 ๋ฉ”๋ชจ๋ฆฌ์˜ ์˜์—ญ

์ฒซ๋ฒˆ์งธ ์˜์—ญ - ํด๋ž˜์Šค ์˜์—ญ, ์ •์  ์˜์—ญ, ์ƒ์ˆ˜ ์˜์—ญ, ๋ฉ”์„œ๋“œ ์˜์—ญ

๋‘๋ฒˆ์งธ ์˜์—ญ - ์Šคํƒ ์˜์—ญ (๋ณ€์ˆ˜๋“ค์ด ์ €์žฅ๋˜๋Š” ๊ณต๊ฐ„)

์„ธ๋ฒˆ์งธ ์˜์—ญ - ํž™ ์˜์—ญ (๊ฐ์ฒด๋“ค์ด ์ €์žฅ๋˜๋Š” ๊ณต๊ฐ„)

 

 

  ๊ธฐ๋ณธ์ž๋ฃŒํ˜•๊ณผ ์ฐธ์กฐ์ž๋ฃŒํ˜•

๊ธฐ๋ณธ ์ž๋ฃŒํ˜• - int, float, double, char ๋“ฑ ์ž˜ ์•Œ๊ณ ์žˆ๋Š” ์ž๋ฃŒํ˜•

์ฐธ์กฐ ์ž๋ฃŒํ˜• - class, interface, enum์œผ๋กœ ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•์„ ๊ธฐ์ดˆ๋กœ ํ•˜์—ฌ ๋งŒ๋“ค์–ด์ง„ ์ž๋ฃŒํ˜•

 

 

  ์‹ค์ œ ๋ฐ์ดํ„ฐ ๊ฐ’

๊ธฐ๋ณธ ์ž๋ฃŒํ˜•: ์Šคํƒ ๋ฉ”๋ชจ๋ฆฌ(๋‘๋ฒˆ์งธ์˜์—ญ)์— ์‹ค์ œ ๋ณ€์ˆซ๊ฐ’์„ ์ €์žฅํ•œ๋‹ค

์ฐธ์กฐ ์ž๋ฃŒํ˜•: ์‹ค์ œ ๋ฐ์ดํ„ฐ๊ฐ’์€ ํž™ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ -> ์Šคํƒ ๋ฉ”๋ชจ๋ฆฌ์— ํž™ ๋ฉ”๋ชจ๋ฆฌ์˜ ์œ„์นซ๊ฐ’ ์ €์žฅํ•œ๋‹ค.