자바(3)
-
상속과 인터페이스, 다형성에 대해 2020.09.11
-
캡슐화(Encapsulation)이란
캡슐화는 두 가지의 정의가 있습니다. 첫째로, 클래스(class)와 구조(structure)와 같이 객체의 속성(atrribute)과 행위(Method)에 따라 운영하여 편리성을 늘리는 것입니다(facilitates the bundling of data with the methods). 예를 들어, ‘영화‘라 이름 붙여진 클래스에 영화를 실행하는 행위와 영화의 평점, 그리고 영화의 장르, 제목이 들어가게 된다고 해봅시다. 만약 실행자(혹은 개발자)가 영화와 관련된 행위 혹은 속성(영화의 제목, 장르 등등)을 확인하고 싶을 때는 다른 클래스를 들여다 볼 필요 없이 영화 클래스를 확인하면 될 것입니다. 이처럼 속성과 행위에 따라 묶어 사용자로 하여금 편리성을 제공한다는 데서 장점을 가지고 있습니다. 두 번째..
2020.03.30 -
information hiding, modularity에 대하여
객체지향 프로그래밍의 경우 Information hiding, Modularity, Code re-use, plug-ability와 easy debugging 4가지의 장점을 가지고 있다. 첫 번째로, information hiding이다. information hiding은 간단히 말하면 정보 은닉, 즉 ‘객체 간에 서로를 모르게 하는 것’이라 말할 수 있다. 예를 들어 자동차의 설계도(Class)가 있다고 해보자. BMW와 모닝(object)은 이러한 자동차의 설계도를 기반으로 독립적인 회사만의 기능을 추가해 새로운 자동차를 만든다. 이렇게 생성된 BMW와 모닝(object)은 ‘자동차’(Class)라는 공통점은 가지고 있지만 각 객체의 기능에 따라 다르다는 특징을 가진다. 이처럼 객체간에 공통된 메..
2020.03.22