티스토리 뷰
객체지향 프로그래밍 (Object-Oriented Programming) : 프로그램을 여러 개의 독립된 단위인 객체로 나누고 이 객체들이 상호작용을 하는 프로그래밍 기법
장점
- 코드 재사용 용이
- 유지보수 용이
- 비용 절감
- 응집력 강화
-> 클래스에 하나의 문제 해결을 위한 데이터를 모아 놓은 데이터형을 사용
- 결합력 약화
-> 클래스 간을 독립적으로 디자인
- 대형 프로젝트에 적합
단점
- 객체가 많으면 용량이 커짐
- 공들인 설계 필요
특징
- 추상화(Abstraction)
-> 객체를 구체화시켜서 설명하는 것
-> 객체에서 공통된 속성과 행위를 추출
- 캡슐화(Encapsulation)
-> 정보은닉 및 코드 재활용, 보호
-> public : 클래스 외부에서 사용 가능
protected : 다른 클래스는 X, 상속받은 자식 클래스는 가능
private : 클래스 내부에서만 가능, 외부 노출 X
-> 데이터의 Bundling, 클래스를 통해 구현
- 상속(Inheritance)
-> 상위 클래스에서 하위 클래스로 물려주는 것
-> 다중상속 불가, 필요에 따라 인터페이스 사용은 가능
-> 확장성, 재사용성 ↑
- 다형성(Polymorphism)
-> 많은 것
-> 메소드 오버로딩, 오버라이딩, 동적 바인딩
'일반 이론' 카테고리의 다른 글
클래스, 객체, 인스턴스 (0) | 2019.06.20 |
---|
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday