728x90
ํด๋์ค ๋์ ์ธํฐํ์ด์ค ํค์๋๋ฅผ ์ฌ์ฉํ๋ค.
์ธํฐํ์ด์ค์์๋ ์ ์ธ์ ์ ๊ณตํ๋ ๊ฒ์ด์ง, ์ ์๋ฅผ ๋ด๋ฆฌ๋ ๊ฒ์ด ์๋๋ค.
public interface GamingConsole {
public void up();
public void down();
public void left();
public void right();
}
ํด๋น ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ ํด๋์ค๋ฅผ ํ๋ ๋ง๋ค์ด์ค๋ค.
public class MarioGame implements GamingConsole {
@Override
public void up() {
System.out.println("Jump!");
}
@Override
public void down() {
System.out.println("Goes into a hole!");
}
@Override
public void left() {
}
@Override
public void right() {
System.out.println("Go!");
}
}
public class Hello {
public static void main(String[] args) {
MarioGame game = new MarioGame();
game.down();
game.left();
game.up();
game.right();
}
}
์ ์์ ์ผ๋ก ์ถ๋ ฅ๋๋ค.
์ธํฐํ์ด์ค์ ์ฅ์ ์ ํ๋์ ์ฌ๋ฌ ์ ์ฉ๋ฒ์ด ์์ ์ ์๋ค๋ ๊ฒ์ด๋ค.
public class ChessGame implements GamingConsole {
@Override
public void up() {
System.out.println("์ฒด์ค๋ง์ ํ์นธ ์๋ก");
}
@Override
public void down() {
System.out.println("์ฒด์ค๋ง์ ํ์นธ ์๋ ");
}
@Override
public void left() {
}
@Override
public void right() {
System.out.println("์ฒด์ค๋ง์ ์ค๋ฅธ์ชฝ์ผ๋ก");
}
}
์ธํฐํ์ด์ค๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ณตํต์ ์ธ ์ํ ๊ฐ๋ฅ ํ๋๋ค์ ๋ํํ๋ ๊ฒ์ด๋ค.
(์ธํฐํ์ด์ค๋ ๊ณตํต ํ๋์ ํด๋์ค์๊ฒ ์ ๊ณตํ๋ค.)
728x90
'Java & Spring > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Tomcat] 8080 ํฌํธ ๊ฐ์ ์ข ๋ฃ (1) | 2022.12.25 |
---|---|
[JAVA] ์๋ฐ์ Array : Compare, fill, sort (0) | 2022.12.17 |
[Java] ์๋ฐ List ์ธํฐํ์ด์ค ๊ตฌํ ArrayList vs LinkedList (0) | 2022.12.09 |
[Java] ์๋ฐ List.of()๋ก ๋ง๋ ๋ถ๋ณ ๋ฆฌ์คํธ๋ฅผ ๊ฐ๋ณ ๋ฆฌ์คํธ๋ก ๋ฐ๊พธ๊ธฐ (0) | 2022.12.09 |
[Java] ๊ฐ์ฒด๋ ์์์ ์ต์์ ์์ (0) | 2022.11.23 |