객체지향 프로그래밍 (Object-Oriented Programming)
실세계에 존재하는 데이터와 기능(행위)을 표현하는 객체들을
레고 블럭처럼 조립해서 하나의 프로그램을 만드는 것이 객체지향 프로그래밍이다.
예를 들어, 모니터, 키보드, 마우스, 본체 등의 부품을 조합하면 하나의 컴퓨터가 나온다.
이처럼 연관된 로직들을 결합해 메서드를 만들고, 이 메서드들을 부품으로 해서 하나의 독립된 프로그램으로 만드는 것이다.
객체지향 프로그래밍 언어는 다음을 지원한다.
상속 (Inheritance): http://qlyh8.tistory.com/176
캡슐화 (Encapsulation): http://qlyh8.tistory.com/179
다형성 (Polymorphism): http://qlyh8.tistory.com/180
추상화 (abstraction): http://qlyh8.tistory.com/181
객체지향 프로그래밍의 장점
모듈간의 높은 독립성을 유지한다.
한 프로그램 내의 중복 코드를 최소화하며 코드의 재사용성을 높이고 유지보수를 용이하게 한다.
객체지향 프로그래밍의 단점
상대적으로 실행속도가 느리다.
유연성이 너무 커서 프로그래머가 조심해야 할 것이 많다.
참고 출처: https://opentutorials.org/course/743/6553
'Java' 카테고리의 다른 글
생성자 (Constructor) (0) | 2018.11.27 |
---|---|
상속 (Inheritance) (0) | 2018.11.27 |
객체지향 설계 (0) | 2018.11.15 |
static과 final (0) | 2018.08.20 |
직렬화 (Serialization) (0) | 2018.08.04 |