[Java] 상속의 이점
상속으로 얻을 수 있는 이점이 무엇일까??
링크를 통해 코드를 한 번 보고 오시면 이해하는데 도움이 됩니다!
https://github.com/wpdbs1229/Java/blob/main/Inheritance/MyFriendInfoBook.java
GitHub - wpdbs1229/Java: TEST CODE
TEST CODE. Contribute to wpdbs1229/Java development by creating an account on GitHub.
github.com
1. 상위 클래스 참조변수를 통한 하위 클래스 메소드 접근!
상위 클래스 메소드를 하위 클래스들의 메소드와 오버라이딩 관계에 두면, 상위 클래스의 참조변수를 통해 각 하위 클래스의 오버라이딩 된 메소드를 호출 할 수 있습니다.
예를 들어, 정보를 보여주는 showInfo 메소드가 Friend(상위 클래스), HighFriend(하위 클래스), UnivFriend(하위 클래스)클래스에 오버라이딩 되어 존재 한다면,
Friend 참조변수를 통해 Control 클래스인 FriendHandler에서 HighFriend, UnivFriend 클래스 showInfo를 호출 할 수 있게됩니다!
2. 상속관계 형성을 통한 데이터 관리의 편리함!
상속관계를 형성하지 않으면, 각 Data 클래스를 Control클래스에서 사용하게 될 때, 각 클래스형을 담당하는 변수, 자료구조(배열)등을 각 클래스의 갯수에 맞게 만들어야 합니다. 하지만, 상속 관계에 놓이게 되면 상위 클래스를 참조변수로 하여 각 하위클래스의 인스턴스를 생성하게되면 Java의 컴파일러가 HighFriend, UnivFriend 인스턴스를 Friend 인스턴스로 보게 되기 때문에 Friend 클래스 형 변수, 자료구조만으로 여러 개의 클래스를 관리할 수 있게 됩니다!!
-중요하니까 꼭 봐두자!!-
상속을 통해 연관된 일련의 클래스에 대한 공통적인 규약을 정의할 수 있습니다. 다시 말하면, Control 클래스는 상속을 통해 데이터 클래스에 대해 동일한 방식으로 배열에 저장 및 메소드 호출을 할 수 있습니다