โ—‹ ๋ฉค๋ฒ„๋ณ€์ˆ˜ ์ดˆ๊ธฐํ™” ๋ฐฉ๋ฒ•

  1. ๋ช…์‹œ์  ์ดˆ๊ธฐํ™” (Explicit initialization)

  2. ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ (Initialized block)

  3. ์ƒ์„ฑ์ž (Constructor)

  

 

1. ๋ช…์‹œ์  ์ดˆ๊ธฐํ™” 

- ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ๊ณผ ๋™์‹œ์— ๊ฐ’์„ ๋„ฃ์–ด์ฃผ๋Š” ๊ฒƒ์„ ๋ช…์‹œ์  ์ดˆ๊ธฐํ™”๋ผ๊ณ  ํ•œ๋‹ค.

1
2
3
4
5
6
7
8
public class Con{
 
    int n=0;
    int m=0;
 
        :
        :    
    }
cs

 

2. ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ

- ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์—๋Š” ํด๋ž˜์Šค ์ดˆ๊ธฐํ™”๋ธ”๋Ÿญ๊ณผ ์ธ์Šคํ„ด์Šค ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์ด ์žˆ๋Š”๋ฐ ์˜ค๋Š˜์€ ์ธ์Šคํ„ด์Šค ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ๋งŒ ๋ณด๊ฒ ๋‹ค.
-์ธ์Šคํ„ด์Šค ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์€ ์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜์˜ ์ดˆ๊ธฐํ™”์— ์‚ฌ์šฉ๋œ๋‹ค.

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Con{
 
    int n=0;
    int m=0;
    
 
    n=40;    //---==์—๋Ÿฌ
    
        :
        :
}
 
 
cs

- ํด๋ž˜์Šค ์•ˆ์—์„œ๋Š” ์—ฐ์‚ฐ ๋ฐ ์ฒ˜๋ฆฌ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅ ํ•˜๋‹ค.

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Con{
 
    int n=0;
    int m=0;
    
 
    {//์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ
        n=20;
        m=40;
                
    }
 
}
cs

- ํ•˜์ง€๋งŒ {}์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์—์„œ๋Š” ๊ฐ€๋Šฅํ•˜๋‹ค.
- ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ๋‚ด์—์„œ๋Š” ๋ฉ”์„œ๋“œ ์™€ ๊ฐ™์ด ์กฐ๊ฑด๋ฌธ, ๋ฐ˜๋ณต๋ฌธ ๋“ฑ ์„ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ์–ด์„œ ๋ช…์‹œ์  ์ดˆ๊ธฐํ™”๋กœ ํ• ์ˆ˜ ์—†๋Š” ๋ณต์žกํ•œ      ์ดˆ๊ธฐํ™” ์ž‘์—…์„ ํ• ์ˆ˜ ์žˆ๋‹ค.
- ์ดˆ๊ธฐํ™”๋ธ”๋Ÿญ์€ ์ƒ์„ฑ์ž๋ณด๋‹ค ๋จผ์ € ์ˆ˜ํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ƒ์„ฑ์ž๋ณด๋‹ค ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋‚ฎ๋‹ค.

    → ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋‚ฎ๋‹ค๋Š” ์˜๋ฏธ๋Š” ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์—์„œ ์ดˆ๊ธฐํ™” ํ–ˆ๋‹ค ํ•ด๋„ ์ƒ์„ฑ์ž์—์„œ ๊ฐ’์„ ๋ฐ”๊ฟ”์ฃผ๋ฉด ์ƒ์„ฑ์ž์˜ ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™” ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ƒ์„ฑ์ž์—์„œ์˜            ๊ฐ’์ด ์šฐ์„ ์‹œ ๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

 

- ์ƒ์„ฑ์ž ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ ์šฐ์„ ์ˆœ์œ„ ์˜ˆ์‹œ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public class Con{
 
    int n;
    int m;
    
    //์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ initialized block
    {
        n=20;
        m=40;
        System.out.println("์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ ์‹คํ–‰");
        
    }
    //์ƒ์„ฑ์ž(Constructor)
    Con(){
 
        n=100;
        m=200;
        System.out.println("์ƒ์„ฑ์ž ์‹คํ–‰...");
    }
    Con(int n ,int m){
 
        this.n=n;
        this.m=m;
        System.out.println("๋งค๊ฐœ๋ณ€์ˆ˜ ์žˆ๋Š” ์ƒ์„ฑ์ž ์‹คํ–‰");
    }
 
    void write(){
 
        System.out.println("n :" + n + ", m :" + m );
    }
 
    public static void main(String[] args){
 
        Con ob = new Con();
        ob.write();
        System.out.println();
 
        Con ob2= new Con(12344567);
        ob2.write();
        System.out.println();
 
    }
}

 

์ƒ์„ฑ์ž ์ดˆ๊ธฐํ™”๋ธ”๋Ÿญ ์šฐ์„ ์ˆœ์œ„ ์ถœ๋ ฅ๋ฌธ

 - ์ถœ๋ ฅ๋ฌธ์„ ๋ณด๋ฉด ob1,ob2 ๋‘ ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ ๋  ๋•Œ ๋‘˜๋‹ค ์ƒ์„ฑ์ž๋ณด๋‹ค ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์ด ๋จผ์ € ์‹คํ–‰ ๋œ๋‹ค.
- ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์ด ์‹คํ–‰ ๋˜์—ˆ๋”๋ผ๋„ ์ƒ์„ฑ์ž์—์„œ ๊ฐ’์„ ๋ฐ”๊ฟ” ์ฃผ๊ฒŒ ๋˜๋ฉด ๊ฐ’์€ ์ƒ์„ฑ์ž์˜ ๊ฒƒ์„ ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์ƒ์„ฑ์ž์˜ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋” ๋†’๋‹ค๊ณ  ํ•˜๋Š”๊ฒƒ์ด๋‹ค.

 

 

? ์—ฌ๊ธฐ์„œ  ์˜๋ฌธ์ ?

Q. ์ƒ์„ฑ์ž์—์„œ๋„ ์ดˆ๊ธฐํ™” ํ• ์ˆ˜ ์žˆ๋Š”๋ฐ ์™œ ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์ด ์žˆ์„๊นŒ?

 A1) ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์—์„œ๋Š” ๋ช…์‹œ์  ์ดˆ๊ธฐํ™”์—์„œ ํ• ์ˆ˜ ์—†๋Š” ๋ณต์žกํ•œ ์ž‘์—…์„ ํ†ตํ•œ ์ดˆ๊ธฐํ™”๋ฅผ ํ• ์ˆ˜ ์žˆ๋‹ค.

 A2) ์ƒ์„ฑ์ž๋“ค์˜ ๊ณตํ†ต์ ์ธ ์ฒ˜๋ฆฌ๋ฅผ ์ดˆ๊ธฐํ™” ๋ธ”๋Ÿญ์— ๋„ฃ์–ด ์ค€๋‹ค๋ฉด ์ฝ”๋“œ์˜ ์ค‘๋ณต์„ ์ œ๊ฑฐํ•ด์ฃผ๊ณ  ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์‰ฌ์›Œ์ง„๋‹ค.

 

 

 

 

+ Recent posts