개발은 어려워

JAVA, 이건 알고 시작하자! (자바의 기초, 자바초보, 자바란 무엇인가) 본문

JAVA

JAVA, 이건 알고 시작하자! (자바의 기초, 자바초보, 자바란 무엇인가)

창호코딩 2019. 6. 10. 19:37

<객체지향언어, 객체란 무엇인가?>

 

언어에는 크게 두가지 언어가 있습니다.

 

절차지향언어와 객체지향언어입니다.

 

절차지향언어 중 하나가 C언어입니다.

그리고 객체지향언어 중 하나가 바로 JAVA입니다.

 

그렇다면 이번 글에서는 객체지향언어의 특징에 대해서 알아보겠습니다.

 

 

먼저, 객체지향언어는 말 그대로 '객체를 갖고 프로그램을 짜겠다'는 말입니다.

그러므로 단위는 객체가 되겠구요.

 

그렇다면 여기서 '객체'란 무엇일까요?

내가 정의할 수 있는 모든 것은 Object 즉, 객체입니다.

하지만 가장 중요한 것은 "항상 명확해야한다."는 것입니다.

실제로 존재하는 것이 Object 입니다. 추상적인 건 안된다는 뜻이죠.

 

사랑은 Object일까요?

사람은 Object일까요?

 

사랑은 Object가 아니고 사람은 Object입니다. 사랑은 모호하고 추상적인 것이기 때문이죠.

 

 

 

객체지향언어는 유지보수와 확장에 유리합니다. 절차를 지향하는 C언어와의 큰 차이점이라고 할 수 있습니다.

 

 

JAVA는 OOP프로그램입니다.

OOP은 Object Oriented Program의 약자입니다.

이 OOP에는 4가지의 큰 특징이 있는데요, 같이 살펴봅시다.

 

 

2. OOP의 4대 특징

1) 추상화 : 추상적 → 구체화

2) 캡슐화 : Data 은닉 및 보호

3) 상속 : 코드의 확장, 재활용

4) 다형성 : 편의성을 위함

 

추상화는 설계에서 가장 중요한 부분입니다. 추상적인 것들을 구체화시켜야하죠.

캡슐화는 캡슐로 된 알약을 생각하시면 편하실겁니다. 안에 있는 알갱이들이 캡슐에 의해 가려져있고 보호되어있죠. 그것이 바로 캡술화입니다.

상속은 앞으로 정말 많이 쓰시게 될텐데, 상속을 통하여서 엄청난 코딩을 줄여갈 수 있습니다. 다른 클래스에 있는 것을 가지고 와서 쓸 수 있기 때문이죠. 그리고 자바는 100% 상속입니다.

다형성은 편의성을 위함입니다. 한가지로 여라가지를 충족시키는 것이죠

 

Data는 캡술화가 잘 되어있을수록 안전합니다.

 

 

 

 

Comments