본문 바로가기
Programming/Java

[Java] 객체지향언어란

by 호호호호히히히히 2018. 3. 11.
728x90
반응형

객체지향 언어 특징



1. 추상화 (abstraction)

객체들의 공통적인 특징(속성,기능)을 추출하는 것

클래스를 정의하는 과정



2. 캡슐화 (Encapsulation)

데이터의 상태와 행위를 결정하는 기능을 결합시킴.

캡슐형 알약으로 보면 됨. 

특정 목적을 수행하기위한 단위로 묶을 수 있음.

+) 데이터를 은닉(information hiding)하고 접근 기능을 제한하여 보호할 수 있음

+) 모듈화(modularity)가 가능하며 가장 작은 단위를 클래스라고 부름



3. 상속성 (Inheritance)

상위 개념의 특징을 하위 클래스에서 물려 받을 수 있음

(부모와 자식의 관계처럼 부모의 특징을 가지고 자식에게 물려줄 수 있음.)

*현재 자바는 부모클래스를 두개 이상 가질 수 없음.



4. 다형성 (Polymorphism)

상속에서 이어지는 개념으로

상속을 받더라도 각각의 하위클래스의 기능을 다를 수 있음

(한 부모 밑에서 낳은 자식이라도 모두 같지는 않다고 생각하면 됨)

같은 이름을 부르더라도 각기 다른 기능을 하도록 구현할 수 있음

반응형

'Programming > Java' 카테고리의 다른 글

[Java] 규약  (0) 2020.09.07
[Java] 변수의 종류와 Type  (0) 2020.09.06
[Java] 클래스와 객체의 차이(Class & Object)  (0) 2018.03.11
[Java] 자바 기본 정리  (0) 2018.03.11

댓글