[Java 입문] 4. 자바의 특징

1.객체 지향 프로그래밍 (OOP, Object-Oriented Programming)

: 자바는 숫자(int,float,long등)이나 논리값(true,false)과 같은 원시 자료형을 제외하면 거의 모두 객체로 구성된다.

 

2. 인터프리터 언어

: 자바는 컴파일 언어인 동시에 인터프리터 언어이다. 텍스트 소스를 컴파일 하여 이진파일(클래스 파일)로 만든 이후, 자바 런타임이 이 클래스 파일을 interpret하면서 실행한다. 이렇게 시스템과 무관한 이진 파일을 만들어 컴파일 언어에 가까운 속도와 함께 시스템의 독립성을 얻을 수 있다.

 

3. 운영체제에 독립적

: 일반적인 프로그램들은 다른 운영체제에서 실행할 수 없다. 하지만 자바의 실행 파일은 이진 코드(클래스)이므로 자바가 설치된 모든 시스템에서는 운영체제와 상관없이 어디서든 실행할 수 있으므로 특정 OS와 관계없이 개발을 해도 된다.

예) 윈도우에서 만들고 리눅스에서 실행 가능 "Write Once, Run Anywhere"

 

4. 정적 타입 언어

:변수의 자료형(타입)을 코드 작성 시점(컴파일 단계)에 미리 정해주어야 하므로 변수의 타입과 다른 값을 넣으면 컴파일에러가 나기때문에 파이썬과 같은 동적 타입 언어와 달리 문제를 빠르게 파악해 실수를 줄여 안정적이고 예측 가능한 프로그램을 만들 수 있게 해준다.