
์๋ฐํ๋ก๊ทธ๋๋ฐ1 10์ฃผ์ฐจ ๊ฐ์_ํ๊ธฐ
1์ฐจ์

4์ฅ ํด๋์ค์ ๊ฐ์ฒด 
์ปดํจํฐ ์์ ๊ตฌํํ๊ณ ์ ํ๋ ์ค์ธ๊ณ ๋ชจ๋  ์ฌ๋ฌผ์ ๊ฐ์ฒด๋ผ๊ณ  ํจ 
๊ฐ์ฒด๋ ํน์ฑ state์ ํ๋ behavior๋ฅผ ๊ฐ์ง 
๊ฐ์ฒด ์งํฅ์ ํน์ฑ 
1. ์บก์ํ // ๊ฐ์ฒด๋ฅผ ์บก์๋ก ์ธ์ ์ธ๋ถ์ ์ ๊ทผ์ผ๋ก๋ถํฐ ๋ณดํธ 
๊ฐ์ฒด ์ธ๋ถ์์๋ ๊ณต๊ฐ๋ ๋ฉ์๋๋ฅผ ํตํด ๋น๊ณต๊ฐ ๋ฉค๋ฒ์ ์ ๊ทผ 
ํ๋์ ๋ฉ์๋๋ ๋ชจ๋ ํด๋์ค ๋ด์ ์ ์ธ 
ํด๋์ค์ ๊ฐ์ฒด์ ๊ด๊ณ // ๋ถ์ด๋นต ํ๊ณผ ๋ถ์ด๋นต 
ํด๋์ค class // ๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ธฐ ์ํ ํ 
๊ฐ์ฒด object // ํด๋์ค ๋ชจ์๋๋ก ์์ฑ๋ ์ค์ฒด instance 
                  // ํ๋ก๊ทธ๋จ ์คํ ์ค์ ์์ฑ๋๋ ์ค์ฒด 
                  // ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๊ฐ๋ ๊ตฌ์ฒด์ ์ธ ์ค์ฒด
2. ์์ // ํ์ ํด๋์ค๊ฐ ์์ ํด๋์ค์ ์์ฑ์ ๋ชจ๋ ๊ฐ์ง๊ณ , ๊ธฐ๋ฅ ํ์ฅ
ํ์ extends ์์ // ์์->๋ถ๋ชจ, ํ์->์์, ์๋ธ->์ํผ
3. ๋คํ์ฑ // ๊ฐ์ ์ด๋ฆ์ ๋ฉ์๋๊ฐ ํด๋์ค๋ ๊ฐ์ฒด์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ๋์
ex) speak(); // ๊ฐ์์ง๋ ๋ฉ๋ฉ, ๊ณ ์์ด๋ ์ผ์น, ๋ญ์ ๊ผฌ๊ผฌ๋
๋ฉ์๋ ์ค๋ฒ๋ก๋ฉ // ๊ฐ์ ์ด๋ฆ์ด์ง๋ง ๋งค๊ฐ๋ณ์์ ํ์ ์ด๋ ๊ฐ์๊ฐ ๋ฌ๋ผ ๊ตฌ๋ถ
๋ฉ์๋ ์ค๋ฒ๋ผ์ด๋ฉ // ์ํผ ํด๋์ค์ ๋ฉ์๋๋ฅผ ์๋ธ ํด๋์ค๋ง๋ค ๋ค๋ฅด๊ฒ ๊ตฌํ
2์ฐจ์
๊ฐ์ฒด ์งํฅ์ ๋ชฉ์  
1. ์ํํธ์จ์ด์ ์์ฐ์ฑ ํฅ์ 
2. ์ค์ธ๊ณ์ ๋ํ ์ฌ์ด ๋ชจ๋ธ๋ง

| 
 1 
2 
3 
 | 
 public class Circle { // ํด๋์ค ์ ์ ์์ 
// ์ ๊ทผ๊ถํ class ํค์๋ ํด๋์ค ์ด๋ฆ 
} // ํด๋์ค ์ ์ ๋ 
 | 
cs | 
public ์ ๊ทผ์ง์ ์ // ๋ค๋ฅธ ๋ชจ๋  ํด๋์ค์ ์ ๊ทผ ํ์ฉ 
๊ฐ์ฒด ์์ฑ 
1. ๊ฐ์ฒด์ ๋ํ ๋ ํผ๋ฐ์ค ๋ณ์ ์ ์ธ 
2. new ํค์๋๋ก ๊ฐ์ฒด ์์ฑํ์ฌ ๋ ํผ๋ฐ์ค ๋ณ์์ ๋์
 // ํด๋์ค ํ์
์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น, ์์ฑ์ ์ฝ๋ ์คํ๋จ 
// new ํค์๋๋ ๊ฐ์ฒด์ ์์ฑ์ ํธ์ถ 
๊ฐ์ฒด ๋ฉค๋ฒ์ ์ ๊ทผ // ๋ ํผ๋ฐ์ค.๋ฉค๋ฒ == ๊ฐ์ฒด์ด๋ฆ.๋ฉค๋ฒ์ด๋ฆ 
| 
 1 
2 
 | 
 Circlce pizza = new Circle(); 
pizza.radius = 10; 
 | 
cs | 
3์ฐจ์
์์ฑ์ 
1. ํด๋์ค ์ด๋ฆ๊ณผ ๋์ผํ ์ด๋ฆ์ ๋ฉ์๋ 
2. ๊ฐ์ฒด๊ฐ ์์ฑ๋  ๋ ์๋์ผ๋ก ๋ฑ ํ๋ฒ ํธ์ถ // ๊ทธ๋ฌ๋ฏ๋ก ํด๋์ค์ ํ ๊ฐ ์ด์ ์์ด์ผ ํจ 
3. ๊ฐ๋ฐ์๊ฐ ๊ฐ์ฒด๋ฅผ ์ด๊ธฐํํ๋๋ฐ ํ์ํ ์ฝ๋ ์์ฑ 
4. ์์ฑ์ ์ฌ๋ฌ๊ฐ ์์ฑ๊ฐ๋ฅ // ์ค๋ฒ๋ก๋ฉ 
5. ๋ฆฌํดํ์
 ์ง์ ํ  ์ ์์ 
public Circle() {} 
๊ธฐ๋ณธ ์์ฑ์ default constructor 
๋งค๊ฐ๋ณ์ ์๊ณ , ์๋ฌด ์์
 ์์ด ๋จ์ ๋ฆฌํดํ๋ ์์ฑ์ 
ํด๋์ค์ ์์ฑ์๊ฐ ํ๋๋ ์ ์ ๋์ง ์์ ๊ฒฝ์ฐ, ์ปดํ์ผ๋ฌ๊ฐ ์๋์ผ๋ก ์ฝ์
 
ํด๋์ค์ ์์ฑ์๊ฐ ํ๋๋ผ๋ ์ ์๋ ๊ฒฝ์ฐ, ์ปดํ์ผ๋ฌ๊ฐ ๊ธฐ๋ณธ ์์ฑ์๋ฅผ ์๋์ผ๋ก ์ฝ์
ํ์ง ์์ 
// ์ด ๊ฒฝ์ฐ, ๊ธฐ๋ณธ ์์ฑ์ ํธ์ถ์ด ํ์ํ ๋ถ๋ถ์์ ์ปดํ์ผ ์ค๋ฅ ๋ฐ์ 
this() // ํด๋์ค ๋ด์ ๋ค๋ฅธ ์์ฑ์๋ฅผ ํธ์ถ 
์์ฑ์ ๋ด์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ 
๋ฐ๋์ ์์ฑ์ ์ฝ๋์ ์ ์ผ ์ฒ์์ ์ํ 
์๋ฐ์๋ ํฌ์ธํฐ๋ผ๋ ๊ฐ๋
์ด ์๋ค. 
this์ this()๋ ์์ ๋ค๋ฅธ ๊ฒ์ด๋ผ๊ณ  ์๊ฐํด๋ผ 
this // ๊ฐ์ฒด ์์ ์ ๋ํ ๋ ํผ๋ฐ์ค 
์๊ธฐ ์์ ์ ๊ฐ๋ฆฌํด 
์ด๋ค ๊ฐ์ฒด๋ ์ง this๋ผ๋ ํ๋๊ฐ ์๋์ผ๋ก ์์ฑ๋จ 
this.๋ฉค๋ฒ ํํ๋ก ๋ฉค๋ฒ ์ ๊ทผ
| 
 1 
2 
 | 
 public Circle(int r) {radius = r;} 
public Circle(int radius) {this.radius = radius;} 
 | 
cs | 
this๊ฐ ํ์ํ ๊ฒฝ์ฐ 
1. ๊ฐ์ฒด์ ๋ฉค๋ฒ ๋ณ์์ ๋ฉ์๋ ๋ณ์์ ์ด๋ฆ์ด ๊ฐ์ ๊ฒฝ์ฐ 
2. ๋ค๋ฅธ ๋ฉ์๋ ํธ์ถ์ ๊ฐ์ฒด ์์ ์ ๋ ํผ๋ฐ์ค๋ฅผ ์ ๋ฌํ  ๋ 
3. ๋ฉ์๋๊ฐ ๊ฐ์ฒด ์์ ์ ๋ ํผ๋ฐ์ค๋ฅผ ๋ฐํํ ๋ 
๊ฐ์ฒด ์นํ // ๊ฐ์ฒด๊ฐ ๋ณต์ฌ๋๋ ๊ฒ์ด ์๋ ๋ ํผ๋ฐ์ค๊ฐ ๋ณต์ฌ๋๋ค.
| 
 1 
2 
3 
4 
5 
 | 
 Circle ob1 = new Circle(); 
Circle ob2 = new Circle(); 
Circle s; 
s = ob2; 
ob1 = ob2; 
 | 
cs | 
'1. Java ์๋ฐ > 1_0. ์ฑ , ๊ฐ์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [์๋ฐํ๋ก๊ทธ๋๋ฐ1] 12์ฃผ์ฐจ ๊ฐ์_ํ๊ธฐ (0) | 2022.05.18 | 
|---|---|
| [์๋ฐํ๋ก๊ทธ๋๋ฐ1] 11์ฃผ์ฐจ ๊ฐ์_ํ๊ธฐ (0) | 2022.05.18 | 
| [์๋ฐํ๋ก๊ทธ๋๋ฐ1] 9์ฃผ์ฐจ ๊ต์ฌ_์ ๋ฆฌ (0) | 2022.05.18 | 
| [์๋ฐํ๋ก๊ทธ๋๋ฐ1] 7์ฃผ์ฐจ ๊ต์ฌ_์ ๋ฆฌ (0) | 2022.05.13 | 
| [์๋ฐํ๋ก๊ทธ๋๋ฐ1] 6์ฃผ์ฐจ ๊ต์ฌ_์ ๋ฆฌ (0) | 2022.05.13 |