본문 바로가기
IT Study/따즈아 Java & Java 기초

따즈아 java 멘토 시리즈 19강 - 클래스_객체지향언어

by hhyyyjun 2022. 12. 27.

1. 객체 지향 언어

현실에 존재하는 사물과 개념들을 소프트웨어적으로 구현하고 그 구현된 객체들이 상호작용하여 데이터를 처리하는 방식

2. 객체지향 언어의 목적

**코드의 재사용**

객체 - 독립적으로 존재할 수 있는 것

객체를 지향한다? 코드를 객체화하여 독립적으로 존재할 수 있도록 함

절차지향 언어 - 명령을 순서대로 처리하는 방식

3. 객체지향 언어의 특징

1) 추상화

공통적인 특징을 모아놓은 것

ex) 택시, 버스 , BMW

>> 바퀴가 있다, 핸들이 있다, 와이퍼가 있다, 악셀을 밟으면 앞으로 나간다 등의 <자동차> 공통점

2) 상속

부모의 것을 자식이 받아옴

추상화를 통해 만들어둔 객체 안의 여러 기능이나 특징들을 하위의 객체들이 가져와서 사용함

3) 캡슐화

사용하는 사람은 기능만 알면 됨 >> 캡슐 안에는 어떤 것이 있는지 알 필요 X

ex) 감기약을 찾을 때 감기약 내의 모든 성분을 다 알 필요가 없는 것과 같음.

4) 다형성

같은 모양을 갖고 있으나 다른 의미를 갖고 있는 것

ex) 바다의 배, 과일 배, 사람의 배

ex) 같은 기능이지만 소리가 다름

4.1) 메서드 오버로딩(Over Loading)

함수의 중복 정의

4.2) 메서드 오버라이딩(Over Riding)

함수의 재정의

>> 부모-자식 관계 성립

ex)기능을 가져오면서 새롭게 재정의

댓글