컴퓨터 프로그래밍의 패러다임 중 하나로 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 객체들의 모임으로 파악하고자 하는 것
객체 지향 프로그래밍에서 일반적으로 추상 자료형을 클래스
, 추상 자료형의 인스턴스를 객체
, 추상 자료형에서 정의된 연산을 메소드(함수)
, 메소드의 호출을 생성자
라 한다.
불필요한 정보를 숨기고 중요한 정보만을 표현함으로써 자료 추상화를 통해 정의된 자료형을 추상 자료형이라 한다.
새로운 클래스가 기존의 클래스의 자료와 연산을 이용할 수 있게 하는 기능
기존 클래스를 상속받은 하위 클래스를 이용해 프로그램의 요구에 맞추어 클래스를 수정할 수 있고 클래스 간의 종속 관계를 형성함으로써 객체를 조직화 할 수 있다.
상속을 받는 새로운 클래스를
부클래스
,파생 클래스
,하위 클래스
,자식 클래스
라고 하며 새로운 클래스가 상속하는 기존 클래스를기반 클래스
,상위 클래스
,부모 클래스
라 한다.
클래스가 2개 이상의 클래스로부터 상속받을 수 있게 하는 기능으로 클래스들의 기능이 동시에 필요할 때 용이하나 클래스의 상속 관계에 혼란을 줄 수 있고 프래그래밍 언어에 따라 사용 가능 유무가 다르다. (자바는 지원X)
어떤 한 요소에 여러 개념을 넣어 놓는 것으로 일반적으로 오버라이딩이나 오버로딩을 의미하며 다형 개념을 통해서 프로그램 안의 객체 간의 관계를 조직적으로 나타낼 수 있다.
실행 시간 중에 일어나거나 실행 과정에서 변경될 수 있는 바인딩
으로 컴파일 시간에 완료되어 변화하지 않는 정적 바인딩
과 대비되는 개념이다.
좋은 정보 얻어갑니다, 감사합니다.