개발자의 공부방/자바

자바 기초] 자바란?

  • -
728x90
반응형

자바(JAVA)란?


1.  자바 언어의 기원

Sun Microsystem의 제임스 고슬링

1990년 그린 프로젝트와 Oak 언어

1995JavaHotJava 발표

19961JDK – 자바 개발 키트

2009OracleSun을 인수함

Java (제임스 고슬링 인도네시아산 커피 이름 및 섬이름 썰…)

 

2.  Java 언어의 특징

C/C++ 언어와 유사 하나 단순함.

플랫폼에 독립적 (아키텍처 독립적) : 이식성 뛰어남

완전한 객체지향 언어

웹 또는 네트워크 프로그래밍이 용이

엄격한 자료형의 검사

예외 처리 기능 제

멀티 스레딩 지원 : 쉽고 간편하게 멀티스레드를 적용 가능

가비지 컬랙션 : 내부적인 포인트를 가지고 있음.


3. 자바의 실행과정


자바소스 파일 (Hello World.java) → Compiler → 자바 바이트코드 (Hello World.class) → PC (이클립스 등에서 Hellow World 실행이 됨)


*자바 바이트 코드

- java 소스를 컴파일한 결과물

- 확장자는 .class 이며 클래스 파일이라고도 함.

- java VM (JVM) 에서 실행 가능한 코드


4. 애플리케이션과 애플릿


애플리케이션

- java 플랫폼에서 바로 실행되는 프로그램


애플릿

HTML 웹 페이지에 포함되어 웹 브라우저를 통해 실행.

웹 브라우저는 Java VM 을 포함함

<APPLET CODE + "HelloApplet.class"

WIDTH=200 HEIGHT=100>

</APPLET>


5. Java 플랫폼

- java 플랫폼은 java 프로그램의 개발과 실행을 위한 환경

- 프로그램의 실행을 위한 하드웨어와 소프트웨어 환경


MyProgram.java

자바 API                   {자바 플랫폼}

자바 가상 머신(JVM)    {자바 플랫폼}

하드웨어 기반 플랫폼


Java VM, JVM (Virtual Machine)

- java 프로그램의 실행환경을 제공하는 가상 기계

- java 프로그램의 구동 엔진, 실행에 필요한 사항을 관리, 메모리 정리 자동 수행.


java API (라이브러리)

- 프로그램의 개발에 필요한 클래스 라이브러리

  패키지 (클래스 묶음) 들이 계층 구조로 분류되어 있음.


JVM의 구성

- 클래스 영역: 클래스 코드를 저장하는 영역

- 자바 스택 (java Stack) : 메서드를 호출할 떄 관련 정보를 저장하는 영역

- 힙 (Heap) : new 라는 키워드를 통해 객체가 생성될 떄 할당받는 영역

- 네이티브 메서드 스택 (Native Method Stack)


JDK (Java Development Kit) : 자바 프로그램을 개발할 수 있게 해주는 개발도구



반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.