Beny's Study
01) 객체지향 프로그래밍 본문
목차
1. 객체지향
2. 객체
3.객체지향 vs 절차지향
4. 객체지향장점
객체지향 프로그래밍
1. 객체지향 (OOP : Object Oriented Programing)
- 데이터 중심이 아닌 객체 중심의 프로그래밍
- 소프트웨어 위기의 대안으로 제시됨 ->복잡도 올라가서
- 연관되는 속성과 기능을 묶어서 부품화시킴 = 캡슐화
- (ex. 특정 사람을 묶어보자~ 특정 기능을 묶어보자!)
- 현실세계에 대한 모델링
- 프로그래밍언어 + 객체지향개념(규칙)
- 핵심개념 : 캡슐화, 상속, 추상화,다형성(다형성 제일 중요)
2.객체 (Object)
객체란?
컴퓨터,고객,학생,자동차 등 현실세계에 흔히 찾아볼수 있는 대상을 추상화 하여 프로그램상에서 만들어낸 결과물!
현실에 존재하는 독립적이면서 하나로 취급되는 사물이나 개념.
객체지향언어에서 객체의 개념은 클래스에 정의된 내용대로 메모리에 할당된 결과물(오브젝트)
- 정의 : 실제로 존재하는 것, 사물 또는 개념
- 용도 : 객체가 가지고있는 기능과 속성에 따라 다름
- 구성요소 : 속성(변수)+기능(매서드)
- 속성 : 멤버변수,특성,필드,상태 (tv예시 : 크기,길이,높이,색상,볼륨,채널 등)
- 기능 : 메서드, 함수, 행위 (tv예시 : 켜기,끄기,볼륨높이기,볼륨낮추기,채널변경하기 등)
- 객체=모든 인스턴스를 대표하는 일반적용어
- 인스턴스=특정 클래스로부터 생성된 객체 (예:TV인스턴스)
객체지향 VS 절차지향
- 절차지향 : 작업의 흐름에따라 코드작성
- 객체지향 : 객체의 관계에 따라 코드작성
(# 실제 프로그램이 동작하는 방식이 다른게 아니라 코드를 어떻게 작성하느냐에 따른 개념적 차이를 말함!)
객체지향 장점
■ 프로그램 모듈의 재사용가능
■ 프로그램 확장 및 유지 보수용이 (수정,변경)
■ 코드중복 제거 기능
■ 쉬운프로그램의 개발로 인한 생산성 향상(다익히고 나면 정말 쉬움-> 생산지향 올라감)
예)절차지향으로 3시간걸릴거 객체지향으로 1시간걸림
■ 완성도 높은 모듈사용으로 프로그램의 안정성 확보( 깔끔한 코드작성 가능)
"본 인터넷 사이트 내의 모든 이미지, 문구, 콘텐츠, 내용 등에 대한 저작권은 76beny에게 있습니다.
이를 무단으로 도용, 복사, 전재, 재배포, 2차 변형 등을 할 경우
민, 형사상 법적 조치 등 저작권법에 의거하여 처벌 받을 수 있습니다."
'[JAVA] > 07. 객체지향' 카테고리의 다른 글
06. 클래스 접근제한자 (0) | 2022.04.07 |
---|---|
05. 캡슐화 (0) | 2022.04.07 |
04.객체(생성->할당->사용)와 인스턴스 (0) | 2022.04.06 |
03.클래스 (Class) (0) | 2022.04.06 |
02) 객체 지향 언어 (추상화,통합모델링언어) (0) | 2022.04.06 |