스프링

SPRING(5) - 객체지향의 4대특성 1

고유빙글 2021. 7. 28. 04:50

와우..캡!상추다. 라는 표현을 외우자

 

캡 - 캡슐화 ( Encapsulation ) : 정보은닉 ( information hiding )

상 - 상속( Inheritance ) : 재사용

추 - 추상화( Abstraction ) : 모델링

다 - 다형성( Polymorphism ) : 사용 편의

 

지금 읽고있는 " 스프링 입문을 위한 자바 객체 지향의 원리와 이해 " 라는 책에서는 상속의 Inheritance 라는 단어보다 더 좋은 이해를 위한 단어가 후술 된다 한다. 또한 클래스와 객체의 관계는 " 붕어빵 틀과 붕어빵 " 이라는 표현도 올바른 이해를 방해하고 있다고 하니 후술하겠다. 

 

붕어빵 틀과 붕어빵

한글로 자바코드를 흉내내 표현해 본 예시를 가지고 오겠다.

 

클래스 객체명 = new 클래스();

이는 모두가 이해 가능한 표현이다.

 

붕어빵틀 붕어빵 = new 붕어빵틀();

이는 논리에 맞지 않다. 

또 하나의 예시로 

금형기계 붕어빵틀 = new 금형기계();

 

이를 논리적으로 풀어보면 새로운 금형기계를 만들었더니 붕어빵틀이 되었다.

 

가 된다. 음... 어떤 말인지 이해가 됨과 동시에 반대측도 이해가 된다.

금형기계를 만든건 붕어빵틀로 이름 붙인거라는 생각이 드는데 좀 머릿속이 복잡하다.

좀 더 생각해봐야할 것 같다.

 

저자가 제시하는 올바른 메타로는 이러하다.

클래스 : 객체 = 펭귄 : 뽀로로 = 사람 : 김연아

이다.

 

이렇게 생각하면 좀 더 머리속이 개운해지는 것 같다.

 

다음 글 부터 객체지향의 4대 특성에 대해 하나하나 들여다 보자.