상속이란 자식 클래스가 부모의 클래스를 물려받아 부모 클래스가 가지고 있는 메서드들을 가져와서 쓰는거야! 예를 들어 오리클래스에 '날다'라는 메서드가 있고 흰오리 클래스에 똑같이 '날다' 라는 메서드가 있어! 그럼 똑같은게 두개니까 중복되잖아? 그럼 뭔가 비효율적이잖아? 그러니까 상속이라는 개념을 사용해서 비효율적인걸 줄이는 느낌이지~ 뭔 말인지 알지??
예시 코드야
class Main {
public static void main(String[] args) {
오리 a오리 = new 오리();
a오리.날다();
흰오리 a흰오리 = new 흰오리();
a흰오리.날다();
청둥오리 a청둥오리 = new 청둥오리();
a청둥오리.날다();
고무오리 a고무오리 = new 고무오리();
a고무오리.날다();
고무2오리 a고무2오리 = new 고무2오리();
a고무2오리.날다();
}
}
class 오리 {
void 날다() {//1
System.out.println("날다");
}
}
class 흰오리 extends 오리 {//2
// void 날다(){
// System.out.println("흰오리가 난다");
// }
}
class 청둥오리 extends 오리 {
// void 날다() {
// System.out.println("오리가 날개로 날아갑니다.");
// }
}
class 고무오리 extends 오리 {
void 날다(){ // 오버라이딩 - 부모한테 물려받을거를 내가 재정의 해서 쓸거에요
System.out.println("고무오리는 못날아요");
}
}
class 고무2오리 extends 고무오리 {
// void 날다(){
// System.out.println("고무오리는 못날아요");
// }
}
설명을 하자면,
그래서 상속을 사용하면 중복을 줄이고 수정도 편하게 할 수 있고 코드도 간략해지고! 대박이지?? 이제 좀 효율적으로 코드를 짜자고
아니요.. 아직 저희 초심자한텐 뭐가뭔지..1도 몰라요..