대상 을 대상 으로 프로 그래 밍 하 는 것 은 무엇 입 니까?IBM 기술 사이트 에서 아일랜드 에서 온 엔지니어, 간단 하고 투철 하 다.

대상 지향 프로 그래 밍 (Object - Oriented Programming, OOP) 은 소프트웨어 개발 패 러 다 임 으로 '대상' 이 라 고 불 리 는 데이터 구조의 정 의 를 바탕 으로 데이터 속성 과 함수 로 구성 된다.이러한 속성 (구성원 변수) 과 함수 (또는 방법) 는 소프트웨어 와 그 대상 이 할 수 있 는 상호작용 을 정의 합 니 다.OOP 의 주요 장점 은 코드 구 조 를 간소화 하고 코드 재 활용 과 유지 에 도움 이 된다 는 것 입 니 다.
'대상 지향' 기초 지식
대상 을 대상 으로 프로 그래 밍 하 는 기본 적 인 전 제 는 소프트웨어 에서 대상 을 만 드 는 것 입 니 다. 이 대상 들 은 이 대상 에 적용 되 는 일련의 속성 과 이 대상 의 속성 을 검색 하거나 수정 할 수 있 는 일련의 방법 이나 함 수 를 정의 합 니 다.car  아마도 간단 한 대상 예시 일 것 이다.하나  car  관련 데이터 속성 은 그것 을 포함 할 수 있 습 니 다.  manufacturer, model number, registration number, color, cubic capacity 등등.한 개  car  이 가능 하 다, ~ 할 수 있다,...  acceleratebrakechange gearturnstop  잠깐 만.OOP 에서 이념 은 모든 자동차 에 통용 되 는 기본 적 인 속성 과 방법 을 정의 하 는 것 입 니 다. 모든 자동 차 는 그 정의 형식 을 사용 할 것 입 니 다. 비록 모든 자동 차 는 서로 다른 값 을 사용 하지만.본 고 는 잠시 후에 소프트웨어 개발 에 서로 다른 대상 을 대상 으로 하 는 경로 가 있다 는 것 을 소개 할 것 이다.
페이지 맨 위
OOP 용어
본 고 를 최대한 이용 하기 위해 서 는 대상 을 대상 으로 프로 그래 밍 과 개념 을 익 혀 야 합 니 다.대상 을 대상 으로 개발 할 때 사용 하 는 상용 용 어 를 간략하게 설명 한다.설명 할 것 은 모든 OOP 유형 이 모든 개념 을 포함 하 는 것 이 아니다.예 를 들 어 원형 을 바탕 으로 하 는 대상 언어 (예 를 들 어 JavaScript) 에는 '클래스' 가 없다.
종류
클래스 기반 대상 개발 에서 하나의 클래스 정의 가 하나의 대상 을 구성 하 는 서로 다른 속성 과 함수 입 니 다.클래스 정 의 는 대상 을 만 드 는 데 사용 되 는 템 플 릿 입 니 다. 따라서 이 대상 들 이 지 킬 수 있 는 공공 속성 과 동작 을 정의 해 야 합 니 다.클래스 는 보통 구성원 변수 와 방법 으로 구성 된다.
구성원 변수
대상 의 구성원 변 수 는 이 대상 의 속성 입 니 다.앞에서 언급 한 자동차 예시 에서 이러한 속성 은 이 자동차의  manufacturer   model, color, cubic capacity 등등.
방법.
방법 은 대상 이 실행 할 수 있 는 동작 이다.예 를 들 어 자동차 한 대가  accelerate, brake, turn 등등.일반적으로 방법 은 구성원 변수의 값 을 수정 합 니 다.되다  car  대상 사용  accelerate  방법 가속 시 현재 속도 속성 이 증가 합 니 다.많은 대상 중 하 나 를 constructor 이 방법 은 대상 이 생 성 된 후 즉시 호출 됩 니 다.
인 스 턴 스 또는 대상
인 스 턴 스 나 대상 은 대상 을 정의 하 는 템 플 릿 이 아 닌 실제 대상 자체 입 니 다.이 가능 하 다, ~ 할 수 있다,...  myCar  의 대상 은 자동차 템 플 릿 의 속성 과 방법 을 가지 고 있다.대상 의 인 스 턴 스 에서 속성 은 실제 값 을 가지 게 됩 니 다.예 를 들 어 myCar 이 가능 하 다, ~ 할 수 있다,...  silver  색상 속성  2500  의 cubic capacity 속성 입 니 다.한 대상 의 속성의 현재 값 을 이 대상 의 상태 라 고 하 는데 이 상 태 는 이 대상 의 전체 생명주기 내 에 변화 할 수 있다.
계승 성
클래스 를 바탕 으로 하 는 OOP 에서 계승 성 은 이러한 과정 이다. 하위 클래스 는 부모 클래스 의 구성원 변수 와 방법 을 계승 한다.이러한 속성 과 동작 을 계승 하 는 것 을 제외 하고 하위 클래스 는 자신의 구성원 변수 와 방법 을 정의 하고 부모 클래스 의 속성의 기본 값 을 제공 할 수 있 습 니 다.이 가능 하 다, ~ 할 수 있다,...  FourByFour  종류  Car  부류 의 부류.이 하위 클래스 는 부모 클래스 의 drivetrain 속성의 기본 값 을 설정 할 수 있 습 니 다.  4WD (사 륜 구동).또한, transfer case 라 는 다른 속성 을 정의 할 수 있 으 며, 이 속성 은 4x4 자동차 에 만 적 용 됩 니 다.다른 일반 차량 에 없 는 저속 기어 (low range gear) 를 변경 할 수 있 는 방법 을 정의 합 니 다.
포장 하 다
클래스 기반 OOP 에서 구성원 변 수 는 클래스 자체 의 범위 밖에서 접근 하거나 수정 되 지 않도록 개인 변수 로 정의 된다.'수정 기' 라 는 특수 한 방법 이 있 습 니 다. 클래스 의 개인 구성원 함수 값 을 검색 하거나 수정 할 수 있 는 방법 을 정의 할 수 있 습 니 다.이 방법 들 (일반적으로 getters 와 setters 라 고 함) 은 프로그래머 가 숨겨 진 정 보 를 사용 하여 프로그램 과 다른 클래스 가 일부 속성 에 만 접근 할 수 있 도록 합 니 다.이런 기술 을 통상 적 으로 포장 이 라 고 부른다.
추상 적
추상 은 대상 의 현재 상하 문 에서 이 대상 에 대한 중요 한 속성 과 방법 만 정의 함으로써 대상 의 복잡성 을 줄 이 는 과정 입 니 다.예 를 들 어 하 나 를 정의 하면  Car 유형 은 한 대의 자동차 가 가지 고 있 는 다른 유형의 차량 (예 를 들 어 트럭, 트럭, 오토바이 등) 도 흔히 볼 수 있 는 모든 속성 을 정의 함으로써 이런 유형 을 하나 로 추상 화 할 수 있다.  Vehicle  종류이렇게, Car 장차  Vehicle  클래스 계승 이 속성 은 하나 와 같 습 니 다.  Motorcycle  혹은  Van  그런
다 태 성
OOP 상하 문 에서 다 태 성 은 모든 방법의 동일 한 실현 을 제공 하지 않 고 그것 의 초 류 계승 방법 을 의미 합 니 다.예 를 들 면, 당신 은 두 개 있 습 니 다.  Car  하 나 는 자동 기어 자동차 에 쓰 인 다.  ATCar 다른 하 나 는 수 동 기어 에 사용 된다.  MTCar )。소유 하 다.  Car  대상 이 모두 속 도 를 낼 수 있 기 때문에  ATCar  와 MTCar 모두 그들의 아버지 로부터 물 려 받 을 것 이다.  accelerate  방법하지만  ATCar  엔진 이 RPM 단계 에 이 르 렀 을 때 accelerate 방법 은 change gear 방법 을 자동 으로 호출 합 니 다.결국  ATCar  하위 클래스 에 덮어 쓰기  accelerate  방법  MTCar  이 방법 은 하위 종 류 를 따 르 는 것 이다.  Car  계승 하 는 방법.
본 고 는 대상 을 대상 으로 프로 그래 밍 하 는 전면적 인 지침 이 아니다.만약 당신 이 상술 한 개념 에 익숙 하지 않다 면, 본문 을 계속 읽 기 전에 뛰 어 넘 을 필요 가 있 습 니 다.  참고 자료  부분 은 OOP 에 관 한 자 료 를 더 읽 습 니 다.

좋은 웹페이지 즐겨찾기