프로그래밍 언어

>기계어 (0,1)

>어셈블리어 (니모닉 기호(mnemonic symbol))

> 고급언어 (C,JAVA) (절차 지향 언어, 객체 지향 언어)


JAVA <플랫폼 독립성이다>

> 제임스 고슬링 (James Gosling)

> 플랫폼 호환성 문제 해결 : C언어같이 플랫폼이 종속되어 있었는데 자바의 JVM(자바가상머신)을 통해 WORA(Write Once Run Anywhere) 실현

단, JAVA언어는 플랫폼 종속적인것이 아니지만 JVM은 플랫폼 종속적이다. 

WORA를 가능하게 하기 위한 특징은 아래와 같다.

> 바이트 코드 (Byte Code)

> JVM (Java Virtual Machine)


바이트 코드

> 플랫폼 종속성이 없이 자바 가상 기계인 JVM에 동작하는 바이너리 코드

> 클래스 파일에 저장

> 컴퓨터 CPU에 의해 직접 실행되지 않는다. (JVM이 인터프리터 방식으로 바이트 코드 해석, 해당 플랫폼에서 실행시킴)


자바 가상 기계

> 각기 다른 플랫폼에서 동일한 자바 실행 환경 제공

> 자바 가상 기계는 플랫폼에 종속적이다.

> 자바 가상 기계가 class(클래스) 파일을 실행한다.


JAVA의 특성

> 객체지향 (클래스 계층구조, 상속성, 다형성, 캡슐화)

> 멀티스레드 

> 소스(.java) 와 클래스(.class) 파일

클래스 파일에는 단 하나 만의 클래스만 존재.

하나의 소스파일에 여러 클래스를 작성 가능 (단, public 클래스는 하나만 가능하다.)

소스 파일의 이름과 public 으로 선언된 클래스 이름은 같아야 한다.






  



'2017 > JAVA' 카테고리의 다른 글

Class 이용연습 (Animal Class)  (0) 2017.07.04
주사위 놀이(java.util.Random)  (0) 2017.07.04
기말대비정리  (0) 2017.06.01

+ Recent posts