Ex02
)Button
ShutDownButton
ToggleButton
⭐️ 부모/자식 관계는 범주의 포함 관계로 이어짐
📁 ex01
(지난 강의 Ex02
에서 복사)☕ Main.java
// 💡 가능 - 자식 클래스는 부모 클래스에 속함
Button button1 = new Button("Enter");
Button button2 = new ShutDownButton();
Button button3 = new ToggleButton("CapsLock", true);
// ⚠️ 불가
ShutDownButton button4 = new Button("Enter");
ToggleButton button5 = new ShutDownButton();
// ⭐️ 편의 : 모두 Button이란 범주로 묶어 배열 등에서 사용 가능
Button[] buttons = {
new Button("Space"),
new ToggleButton("NumLock", false),
new ShutDownButton()
};
for (Button button : buttons) {
// ⭐️ 모든 Button들은 func 메소드를 가지므로
button.func();
}
ex03
예제로 돌아가서…☕ Main.java
Slime slime = new Slime();
FireSlime fireSlime = new FireSlime();
slime.attack(fireSlime); // ⭐ 클래스가 다른데 가능한 이유 : 다음 강에서
fireSlime.attack(slime);