객체 지향의 꽃
재 사용성
코드 양이 줄어듬
부모만 수정해도 부모 기능을 상속 하는 자식 객체들의 기능도 수정 됨(유지 보수 편리)
여러명의 자식이 한 부모의 기능 상속 가능
부모가 다른 클래스를 상속하고 있는 경우, 자식 클래스도 자동으로 부모가 상속하고 있는 클래스의 기능까지 상속받는다.
Tip) 부모클래스는 자식클래스의 기능 사용할 수 없다.
// main
public class main {
public static void main(String[] args) {
// 부모 클래스
character marin = new character();
marin.age = 24;
marin.name = "js";
marin.hello();
String attackResult = marin.attack();
System.out.println(attackResult);
// 자식 클래스(character 클래스를 상속한 클래스)
mainCharacter marin2 = new mainCharacter();
marin2.age = 25;
marin2.name = "iu";
marin2.move();
}
}
// 기본 character 기능
public class character { // 모든 캐릭터의 공통적인 기능
int age;
String name;
public String attack() {
String result = "attack success";
return result;
}
public void hello() {
System.out.println("hello my name is " + this.name);
}
}
// main character(기본 character의 기능을 상속받는 클래스)
public class mainCharacter extends character{
public void move() {
System.out.println(this.name + " move right");
}
}