Replies: 2 comments
-
상속은 기존에 존재하는 클래스(상위 클래스)를 기반으로 새로운 클래스(하위 클래스)를 만들어내는 개념이다. 완전한 is-a 관계이며 상위 클래스의 변경 가능성이 낮을 때 사용할 수 있다. 또한 코드의 결함이 없거나 전파되어도 상관 없는 경우 사용하는 것이 좋다. 상속은 코드의 재사용을 위해 사용하기 보다 확장의 개념을 적용하기 위해 사용돼야 한다. 조합은 기존의 클래스가 새로운 클래스의 구성 요소로 쓰이는 개념이다. 새 클래스의 field에서 기존 클래스 인스턴스에 대한 참조 값을 가짐으로써 구현할 수 있다. 조합은 has-a 관계를 갖는 객체끼리 연결할 때 사용할 수 있으며, 여러 가지 객체를 가진 복잡한 클래스를 구현할 때 사용할 수 있다. |
Beta Was this translation helpful? Give feedback.
-
상속은 기존 클래스에 기능을 추가하거나 재정의하여 새로운 클래스를 정의하는 것을 의미한다. 기존 클래스(상위 클래스)를 상속 받아서 새로운 클래스(하위 클래스)를 만드는 것이다. is-a 관계라고도 한다. 상속은 코드의 재사용을 위해 사용하기 보다 확장의 개념을 적용하기 위해 사용돼야 한다. 상속을 사용하여 부모와 자식의 행동이 호환되는 다형적인 계층 구조를 표현할 수 있다. 조합은 기존 클래스가 새로운 클래스를 구성 요소로 가지는 것이다. 새로운 클래스는 기존 클래스의 인스턴스를 참조하여 사용한다. has-a 관계라고도 한다. 조합을 사용하여 클래스 간 느슨한 결합을 유지하고, 한 클래스의 변경이 다른 클래스에 영향을 덜 미칠 수 있다. |
Beta Was this translation helpful? Give feedback.
-
.
Beta Was this translation helpful? Give feedback.
All reactions