본문 바로가기
Develop/Java

[JAVA] 자바란?

by 루시킴 2021. 10. 4.

자바(JAVA)

자바는 객체지향 언어로 객체지향의 대표적인 특징인 캡슐화, 상속성, 다형성을 지원한다. 객제지향이란 객체들을 먼저 만들고 이것들을 연결하여 프로그램을 만드는 방식을 의미한다.

 

캡슐화 : 관련이 있는 변수나 메소드를 하나의 클래스로 묶고 외부에서 직접적인 접근이나 변경이 불가하도록 하는 은닉목적으로 사용

다형성 : 하나의 객체가 여러 개의 타입을 가질수 있는것

상속성 : 반복적인 코드를 줄이고 재사용성을 향상시켜줌. 어떠한 클래스가 있으면 그 클래스로부터 여러개 객체를 생성하는 것

 

자바의 특징

1. 높은 이식성

자바 실행환경(JRE)가 설치되어있는 모든 운영체제에서 사용이 가능하다. JVM(Java Virtual Machine)이 운영체제와 프로그램 사이에서 프로그램이 동작하고 있는 운영체제가 무엇인지 판단한 뒤 해당 운영체제에 기계어로 번역해준다. 

 

2. 자동 메모리 관리

자바는 개발자가 직접 메모리에 접근이 불가하며 자바가 직접 메모리를 관리한다. 자바에서는 객체 생성시 자동으로 메모리 영역을 찾아서 할당하고 Garbage Collector라는 자동 메모리 정리 기능을 통해 사용하지 않는 객체를 정리한다. 따라서 개발자는 코딩에 집중 할 수 있다. 

 

3. 느린 속도

자바는 실행을 위해 JVM을 걸쳐야 하므로 다른 언어에 비해 속도가 느리다. 또한 다른 언어에 비해 코드의 길이가 긴 편이다. 

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

객체지향 프로그래밍이란?  (0) 2021.10.31
[JAVA] 오버로딩 VS 오버라이딩  (0) 2021.10.31
[JAVA] 캡슐화 & 다형성 & 상속  (0) 2021.10.31
[JAVA] 코딩테스트 자주 사용하는 함수  (0) 2021.10.16
[JAVA] List Collection  (0) 2021.10.04

댓글