CS/소프트웨어개발방법론

객체지향 설계와 원리

씩씩한 IT블로그 2022. 2. 12. 15:08
반응형

객체와 클래스

- 객체는 독립적으로 존재하는 실세계의 사물 (Ex-학생, 물건, 도시)

- 클래스는 유사한 객체들의 모임

- 클래스(학생) 내의 객체들은 같은 속성(학번, 전공, 성적)을 가지고, 고유한 속성값(김영희: 13학번,컴공,4.3, 이영철:14학번,경영,4.2)을 가진다

 

캡슐화(encapsulation)

- 모듈별로 정보은닉을 하여 모듈간의 독립성을 보장해주는것

- 단위 모듈의 처리 완전성을 높히고 타 모듈과의 종속성을 최소화

- 이를 통해 이해하기 쉽고, 수정이 쉬운 소프트웨어 개발 가능

 

상속(inheritance)

- 클래스를 계층화하고 상위 클래스의 속성과 기능을 하위클래스에서 사용할 수 있게 하는것

- 높은 수준의 코드 재활용성을 제공

 

다형성(polymorphism)

- 동일한 이름이라도 클래스에 따라 다르게 동작하는것

- 오버라이딩(Overriding) : 상위클래스에서 정의한 매소드를 하위클래스에서 재정의

- 오버로딩(overloading) : 같은 함수 이름에 파라미터의 타입과 개수만 다르게 하여 함수를 다중정의

반응형