JavaRush /Java Blog /Random-KO /์น˜ํŠธ ์‹œํŠธ "์ตœ์ข… ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ"
ะ˜ั€ะธะฝะฐ
๋ ˆ๋ฒจ 10

์น˜ํŠธ ์‹œํŠธ "์ตœ์ข… ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ"

Random-KO ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค
์ด ๊ธฐ์‚ฌ์—์„œ๋Š” Java ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ final ํ‚ค์›Œ๋“œ ์˜ ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค . ์ ์šฉ ์ƒํ™ฉ์— ๋Œ€ํ•œ ๊ฐ„๋žตํ•˜๊ณ  ๋ช…ํ™•ํ•œ ์„ค๋ช…์€ ์ž๋ฃŒ๋ฅผ ๋น ๋ฅด๊ฒŒ ๋ฐฐ์šฐ๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. final ํ‚ค์›Œ๋“œ๋Š” ํ”„๋กœ๊ทธ๋žจ ๋‚ด์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์œ„์น˜์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ํ•ด์„๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜์ด ๋‹จ์–ด์˜ ๋ณธ์งˆ์€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ๊ธˆ์ง€ . ์‹ค์ œ๋กœ ์ด ๋‹จ์–ด๋ฅผ Java ์–ธ์–ด์˜ ๋ณธ์งˆ ์ค‘ ํ•˜๋‚˜์ธ ๋ณ€์ˆ˜, ๊ฐ์ฒด, ๋ฉ”์†Œ๋“œ ๋˜๋Š” ํด๋ž˜์Šค์— ์ ์šฉํ•จ์œผ๋กœ์จ ๊ฐ€์ˆ˜ Joseph Kobzon์˜ ํ—ค์–ด์Šคํƒ€์ผ์ฒ˜๋Ÿผ ์ƒ์ˆ˜, ์•ˆ์ •์ ์ด๊ณ  ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฐ’์œผ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค... ์ƒ๊ธฐ์‹œ์ผœ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ์ƒ์ˆ˜์˜ ๊ฐ„๋žตํ•œ ์ •์˜. ์ƒ์ˆ˜๋Š” ์ˆ˜ํ•™, ๋ฌผ๋ฆฌํ•™, ํ™”ํ•™์—์„œ ์ผ์ •ํ•œ ์–‘(์Šค์นผ๋ผ ๋˜๋Š” ๋ฒกํ„ฐ)์ž…๋‹ˆ๋‹ค. ์ˆ˜ํ•™ ์ƒ์ˆ˜๋Š” ๊ฐ’์ด ๋ณ€ํ•˜์ง€ ์•Š๋Š” ์ˆ˜๋Ÿ‰์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ๋ณ€์ˆ˜์˜ ๋ฐ˜๋Œ€์ž…๋‹ˆ๋‹ค. final ์ด๋ผ๋Š” ๋‹จ์–ด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” 4๊ฐ€์ง€ ๊ฒฝ์šฐ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค .

1. ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ์œ ํ˜•์˜ ์ƒ์ˆ˜ ์ƒ์„ฑ.

์—ฌ๊ธฐ์„œ MY_CONST ๊ฐ’์€ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ธฐ๋ณธ ๋ณ€์ˆ˜ ์˜†์— final์ด๋ผ๋Š” ๋‹จ์–ด๋ฅผ ์“ฐ๋ฉด ์ด๋Š” ์ƒ์ˆ˜์ž…๋‹ˆ๋‹ค.
public class MyClass{
	public final int MY_CONST = 13;
}

2. ์ฐธ์กฐ ์œ ํ˜• ์ƒ์ˆ˜๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ด ์ฝ”๋“œ๋Š” ์˜ค๋ฅ˜๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค์ง€ ์•Š์ง€๋งŒ s1 ๋ณ€์ˆ˜์— ์ƒˆ ๊ฐ’์„ ํ• ๋‹นํ•  ๋•Œ๊นŒ์ง€๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค . ์ฆ‰, ์ฐธ์กฐ ์œ ํ˜•์— ๋Œ€ํ•œ final ์ด๋ผ๋Š” ๋‹จ์–ด๋Š” ์ฐธ์กฐ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฐ์ฒด๊ฐ€ ์•„๋‹Œ ์ฐธ์กฐ์˜ ์ˆ˜์ •์„ ๊ธˆ์ง€ํ•ฉ๋‹ˆ๋‹ค. ํ• ๋‹น์€ ํ”„๋กœ๊ทธ๋žจ์˜ ์–ด๋Š ๊ณณ์—์„œ๋‚˜ ์œ ํšจํ•˜์ง€๋งŒ ํ•œ ๋ฒˆ๋งŒ ์œ ํšจํ•˜๋‹ค๋Š” ์ ๋„ ์ฃผ๋ชฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
public class MyClass2{
	public final String s1;
	public MyClass2() {
		s1 = new String();
	 }
}

3. ์ž์† ํด๋ž˜์Šค์˜ ๋ฉ”์†Œ๋“œ ์˜ค๋ฒ„๋ผ์ด๋”ฉ ๊ธˆ์ง€

๋ฉ”์„œ๋“œ ์˜†์— ์žˆ๋Š” final์ด๋ผ๋Š” ๋‹จ์–ด๋Š” ํ•˜์œ„ ํด๋ž˜์Šค์—์„œ ์ด ๋ฉ”์„œ๋“œ๋ฅผ ์žฌ์ •์˜ํ•˜๋Š” ๊ฒƒ์„ ๊ธˆ์ง€ํ•ฉ๋‹ˆ๋‹ค.
public class Example{
	public final void hello() {
	System.out.println(โ€œHello my people!โ€);
	}
}
์ฆ‰, ์˜ˆ์ œ๋ฅผ ์ƒ์†๋ฐ›์€ ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑ ํ•˜๊ณ  ๊ทธ ์•ˆ์— ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
public class ExtendedExample extends Example{
	public void hello() {
		System.out.println("Extended hello everyone!!!");
	}
}

4. ์ž์† ํด๋ž˜์Šค ์ƒ์„ฑ ๊ธˆ์ง€

์ตœ์ข… ํด๋ž˜์Šค๋Š” ์Šˆํผํด๋ž˜์Šค๊ฐ€ ๋  ์ˆ˜ ์—†๋Š” ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค. ์ฆ‰, ํ•ด๋‹น ํด๋ž˜์Šค์˜ ์ž์†์„ ์ž‘์„ฑํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
public final class MyClass3 {

 }
์ €์ž: ์ด๋ฆฌ๋‚˜ ๋ณผ์ง€๋‚˜
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION