๐ฅ ์ค๋ฒ๋ก๋ฉ(Overloading)
์ค๋ฒ๋ก๋ฉ์ ๊ฐ์ ๋ฉ์๋ ์ด๋ฆ์ ์ฌ๋ฌ ๋ฒ ์ฌ์ฉํ๋ค. ๊ทธ๋ฐ๋ฐ ๋งค๋ฒ ๋งค๊ฐ๋ณ์๋ฅผ ๋ค๋ฅด๊ฒ ๊ฐ์ ธ์ผ ํ๋ค. ๊ทธ๋์ผ ์ปดํ์ผ๋ฌ๊ฐ ์ด๋ค ๋ฉ์๋๋ฅผ ํธ์ถํด์ผ ํ ์ง ์ ์ ์๋ค. ์ด๊ฒ ๋ฉ์๋ ์ด๋ฆ์ ๊ธฐ์ตํ๊ธฐ ์ฝ๊ฒ ๋ง๋ค์ด์ฃผ๊ณ , ์ฌ์ฉ๋ ํธํ๊ฒ ๋ง๋ค์ด์ค๋ค.
public class ๊ณ์ฐ๊ธฐ {
public int ๋ํ๊ธฐ(int a, int b) {
return a + b;
}
public double ๋ํ๊ธฐ(double a, double b) {
return a + b;
}
}
๐ง ์ค๋ฒ๋ผ์ด๋ฉ(Overriding)
์ค๋ฒ๋ผ์ด๋ฉ์ ์์ ํด๋์ค์์ ์ ์๋ ๋ฉ์๋๋ฅผ ํ์ ํด๋์ค์์ ๋์ผํ ์ด๋ฆ๊ณผ ์๊ทธ๋์ฒ๋ก ๋ฎ์ด์ฐ๋ ๊ฒ์ด๋ค. ๋ฉ์๋ ์ด๋ฆ, ๋งค๊ฐ๋ณ์, ๋ฐํ ํ์ ์ด ๋๊ฐ์์ผ ํ๋ค. ๋คํ์ฑ์ ์ด์ฉํด์ ์์ ํด๋์ค์ ๋ฉ์๋๋ฅผ ํ์ ํด๋์ค์์ ๋ฐ๊ฟ ์ ์๋ค.
class ๋๋ฌผ {
public void ์๋ฆฌ๋ด๊ธฐ() {
System.out.println("๊พธ์ฅ");
}
}
class ๊ฐ extends ๋๋ฌผ {
@Override
public void ์๋ฆฌ๋ด๊ธฐ() {
System.out.println("์์!");
}
}
โก ๊ฒฐ๋ก
์ค๋ฒ๋ก๋ฉ์ ๊ฐ์ ๋ฉ์๋ ์ด๋ฆ์ ๋ค์ํ ๋งค๊ฐ๋ณ์๋ก ์ ์ํ๋ ๊ฒ์ด๊ณ , ์ค๋ฒ๋ผ์ด๋ฉ์ ์์ ํด๋์ค์ ๋ฉ์๋๋ฅผ ํ์ ํด๋์ค์์ ๋ฎ์ด์ฐ๋ ๊ฒ์ด๋ค. ๋ ๊ฐ์ง ๊ฐ๋ ์ ์ ํ์ฉํ๋ฉด ์ฝ๋๋ฅผ ๋ ๊น๋ํ๊ฒ ๋ง๋ค ์ ์๊ณ , ์ ์ง๋ณด์๋ ํธํ๊ฒ ํ ์ ์๋ค!
'JAVA > Theory' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ์๋ฐ(Java)์ ์์ธ ์ฒ๋ฆฌ(Exception Handling) (0) | 2023.12.10 |
|---|---|
| ์ถ์ํด๋์ค(Abstract Class)์ ์ธํฐํ์ด์ค(Interface) (1) | 2023.12.07 |
| ๋ฉ์๋(Method)์ ํจ์(Function) (1) | 2023.12.06 |
| ์๋ฐ(Java)์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ (0) | 2023.12.03 |
| ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ์๋ฐ(Java) (1) | 2023.12.03 |
๋๊ธ