반응형
1. 객체 지향 프로그래밍
- 컴퓨터 프로그램을 명령어의 목록으로 보는 절차지향적 시각에서 벗어나 여러 개의 독립된 단위인 객체들의 모임으로 파악하고자 하는것.
2. 구성요소
- 클래스 : 현실 세계의 객체의 속성과 동작을 필드와 메서드로 정의한 것으로 아직 메모리가 할당되지 않은 상태
- 인스턴스 : 해당 클래스의 구조로 컴퓨터 저장 공간에서 할당된 실체를 의미
- 객체 : Class를 기반으로 실제 메모리가 잡힌 것을 의미하며 이런 객체를 조합해 전체 프로그램을 완성해 나가는 것이 객체 지향 프로그래밍이다.
3. 특징
- 상속 : 부모 Class 를 자식이 접근할 수 있도록 물려받는 방식
- 추상화 : 객체들의 공통된 특성들을 파악하고 불필요한 특성은 제거하는 과정
- 캡슐화 : 필드와 메서드를 하나의 단위로 묶고 그 중 일부는 외부에서 사용하지 못하도록 숨긴다.
- 다형성 : 한 타입의 참조 변수로 여러 타입의 객체를 참조할 수 있어 다양한 결과를 얻어내는 성질
- 정보 은닉 : 외부에서 객체 상태를 바꾸거나 허가되지 않은 동작으로부터 보호
4. 장점
- 생산성 향상
- 코드의 재사용
- 유지보수가 편해진다.
5. 단점
- 실행시 속도가 느리다.
반응형
'면접 - 자바' 카테고리의 다른 글
개발자 면접 질문 - 인터페이스 정의 (0) | 2020.12.03 |
---|---|
개발자 면접 질문 - 자료구조 시간 복잡도 (0) | 2020.12.03 |
개발자 면접 질문 - 다형성 정의 (0) | 2020.12.03 |
개발자 면접 질문 - 문자열 더하기 (0) | 2020.12.03 |
개발자 면접 질문 - 오버로딩 (0) | 2020.12.03 |