객체지향 개념들간의 관계 UML
간략히 설명하자면 다음과 같다.
- OOP : Object Oriented Programming
- OOP는 유연성(Flexibility)을 가진다.
- 유연성은 캡슐화와 추상화, 다형성을 이용해서 달성된다.
- 상속은 캡슐화를 활용하고, 다형성은 상속을 이용해서 만들어진다.
- 캡슐화를 통해서 가시성(Visibility) 개념이 만들어지고, 클래스 개념이 만들어진다.
- 클래스는 타입과 필드, 그리고 메소드를 가지고 있다.
- 클래스 개념은 인터페이스(Interface), 추상 클래스(Abstract Class), 구체 클래스(Concrete Class) 개념을 파생시킨다.
- 객체(Object)는 구체 클래스(ConcreteClass)가 가진 개념을 포함한다.
- 객체는 Identity를 가지고 있다.(구체클래스를 통해 클래스가 가진 개념도 가지게 되므로 Method, Field, Type도 가지게 된다.)
- 메소드는 프로토타입을 가지며, 추상 메소드는 메소드의 일종이다.
- 필드는 Reference와 Primitive로 나뉜다.
- 클래스와 메소드, 필드는 가시성을 가진다.
- 클래스는 상속 가능(Inheritable)하다.
- 메소드는 재정의 가능(Overridable)하고, 오버로딩 가능(Overloadable)하다.
'3.객체지향(OOP) 개념' 카테고리의 다른 글
객체지향의 올바른 이해 : 8. 구현 책임과 계약 책임 (3) | 2016.11.29 |
---|---|
객체지향의 올바른 이해 : 7. 의존(Dependency)과 책임(Responsibility) (0) | 2016.11.26 |
객체지향의 올바른 이해 : 4. 중간 정리 (0) | 2016.11.05 |
객체지향의 올바른 이해 : 3. 유연성과 객체지향 4대 특성 (3) | 2016.11.04 |
객체지향의 올바른 이해 : 2. 유연성 (0) | 2016.11.01 |