객체지향언어의 특징

Language/Java

7-6 다형성

다형성 객체지향언어에서 제일 중요한 다형성이다. 다형성을 이해해야 앞으로 나올 객체지향 특징 중 하나인 추상화에 대해서, 그 추상화와 관련된 abstract와 interface에 대해서도 이해할 수 있다. 따라서 다형성을 꼭 이해하고 넘어가야 한다. 먼저 다형성의 정의를 원론적인 의미에서 살펴보자면 다형성은 여러 가지 형태를 가질 수 있는 능력이다. 그러나 이건 원론적인 의미이고, 실제로 다형성을 객체지향언어에 관점에서 보자면 다음과 같이 답해야 한다. 부모의 참조 타입 변수로 자식의 참조 타입 객체를 다루는 것. 여기서 그냥 넘어갈 수도 있지만 눈여겨 봐야 하는 것은 부모의 참조 타입 변수로 자식의 참조 타입 객체를 다루는 것이다. 즉 결론적으로 자식 타입의 객체를 다루는 것이다. 이 말에 초점을 두고..

Language/Java

7-5 캡슐화

객체지향언어의 4가지 특성 중 첫 번째인 캡슐화에 대해서 자세히 알아보자. 이제부터 객체지향에 대해서 깊게 들어가기 때문에 어려워질 수 있다. 우선 위에서 접근 제어자를 사용했는데, 위에 여러가지 예시를 보면서 느꼈겠지만 접근 제어자를 사용하는 이유는 외부로부터 데이터의 접근을 보호하기 위해서 사용하는 것이다. 개발은 혼자하는 것이 아니고 다 같이 하는 것인데, 어떠한 개발자가 실수로 접근하면 안되는 값에 대해서, 접근해서 실수로 값을 바꿔버리면 대참사가 발생한다. 이때, 클래스 내부에 있는 변수는 접근을 못하도록 제한하고, 실제로 메서드 내부에서 변수가 어떤 원리로 동작하는 지에 대해서 숨기는 것을 캡슐화 라고 한다. 종종 캡슐화와 정보 은닉에 대해서 헷갈리는 경우가 많은데, 여기서 정보은닉이 접근 제..

Bombo_
'객체지향언어의 특징' 태그의 글 목록