Chapter01. 자바란

3 minute read

Published:

자바란

만약 아래 문제들을 풀수 있다면 이 챕터는 안봐도 된다. 없다면 스크롤 다운!! ====>

  1. JDK와 JRE의 차이점을 설명할수 있는가?
    JRE는 (Java Runtime Environment) JVM, 라이브러리 API가 포함되어 있다.
    JDK는 (Java Development Kit) 프로그램 개발을위해 JVM, 라이브러리API, 컴파일러가 포함되어 있다.
  2. JVM을 설명할수 있는가?
    JVM이란(Java Virtual Machine), 자바가상기계란 자바와 사용중인 운영체제의 사이를 중계하는 가상운영체제 역할을 한다. Window용 Mac용으로 나뉘어져 있다.
  3. 자바 프로그램 개발과정을 순서대로 나열할수 있는가?
    자바코드 작성 (.java)
    자바코드 컴파일 실행 (javac.exe)
    자바코드 컴파일 (.class)
    컴파일 실행 (java.exe)
  4. 자바 주석문 사용 방법을 아는가?
    행 주석 (//)
    범위주석(/* ~*/)
  5. 자바소스 작성법
    {}안에 소스를 작성한다.
    하나의 명령은 ;세미콜론이 끝날때 까지를 의미한다.
    클래스 명은 대문자로 시작하고 빈칸이 없으며, 숫자로 시작되는 이름이 아니어야한다.
  6. 이클립스 설명할수 있는가?
    JDK(JRE)가 설치되어 있어야하고, 소스 저장시 자동 컴파일된다.

========================================================================

1.프로그래밍 언어

: why? 기계어란 0과 1로 이루어진 이진코드이다. 따라서 사람과 컴퓨터와의 대화를 위해서 프로그래밍 언어가 생겼다.
what? 프로그래밍언어는 사람이 이해할수 있는 고급언어와 어셈블리어 같은 기계어에 가까운 저급언어가 있다.
how? 프로그래밍 언어가 컴파일과정을 통해서 컴퓨터가 이해하기 위한 이진법으로 변환되어 사용된다.
예를들어, JAVA, C, C++ 등이 있다.
프로그램이란 특정 목적을 수행하기 위해서 고급언어로 작성된 소스를 기계어로 번역한 것 이다.

2.그래서 자바란?

: when? 1995년 Sun Microsystems에서 Java를 발표했다.
what? Oak라는 언어에서 Java로 발전되어 1999년에 인터넷의 활성화로 두각을 보이기 시작했다.
why? 웹어플리케이션 구축용언어로 적절했다.단한번의 작성으로 모든 곳에서 실행 가능했기 때문이다.
예를 들어, 핸드폰, 장비, 데스크탑의 어플리케이션 등 에서 사용되고 있다.

3. 자바의 특징

: 자바의 이식성: 자바로 만들어진 프로그램은 JRE(Java Runtime Environment)가 설치되어있는 모든 운영체제에서 사용가능하다.
객체 지향성: 부품중심적인 프로그래밍으로, 부품들을 모아서 조립하는 형식의 프로그래밍을 할때 객체 지향 언어를 사용한다. 자바는 100%객체 지향언어로써 객체를 만들기위한 클래스를 작성하고, 캡슐화, 상속, 다형성 기능을 이용하여 조립되어 프로그램이 완성된다.
람다식 코딩 : 필터링, 매핑, 집계 처리하기에 용이한 람다식을 자바8버젼 부터 사용한다.
메모리 관리 : 자바가 메모리를 관리하여 객체 생성과 사용완료된 쓰레기 수집기를 실행한다. 개발자가 메모리를 관리할 필요가 없다.
Java SE(Standard Edition) : 개발도구, 실행을 위한 JVM(Java virtual machine), 라이브러리 API를 정의할수 있다. 반드시 자바개발키트 JDK(Java Development Kit)를 설치해야한다. 클라이언트와 서버 프로그램을 만들수 있다.
Java EE(Enterprise Edition) : 네트워크, 인터넷에서 서버용 어플리케이션을 개발하기 위한 도구와 라이브러리API를 정의한다. 서버 애플리케이션은 Servlet/JSP, EJB(Enterprise Java Bean), XML 웹 서비스가 있다.
멀티 쓰레드 : 프로그램이 여러 일처리를 하기 위해서 병렬로 분리하여 처리하는데 이를 멀티 쓰레드라고 한다. 자바는 운영체제에 상관없이 API를 사용하여 구현할수 있다.
동적 로딩 : 어플리케이션 실행시 객체가 호출되는 시점에서 생성 되므로 유지보수에 좋다.
오픈소스 라이브러리 : 다양한 오픈소스 라이브러리를 제공하므로 개발자가 일일이 기능을 만들 필요가 없다.
JVM(Java Virtual Machine) : 자바가상기계란 자바와 운영체제의 사이를 중계하는 가상운영체제 역할을 한다. Window용 Mac용으로 나뉘어져 있다.

4. 자바 개발 환경구축

: JRE = JVM + 표준 클래스 라이브러리
JDK = JRE + 개발에 필요한 도구
JDK를 다운받아 빈번히 사용되는 bin디렉토리를 시스템 변수에 등록한다.
API다큐먼트를 사용하여 필요한 기능을 적용할수 있다.

5. 자바 프로그램 개발 순서

  • .java파일을 만든다.
  • javac.exe로 컴파일한다.
  • .class파일이 생성된다.
  • java.exe로 JVM이 실행되면 .class소스를 메모리에 로드하고, main() 메서드를 찾아 실행한다. 프로그램 소스 분석
  • main()메서드는 프로그램 실행 진입점이다.
  • 클래스는 암묵적으로 대문자로 시작한다.
  • 클래스는 필드와 메서드를 가지고 있다.

6. 주석과 실행문

: 행 주석 : //
범위 주석 : /* ~ */
실행되는 코드는 세미콜론이(;) 있을때까지 하나의 실행문으로 정의된다.

7. 이클립스 설치

: what? IBM에서 2003년 이클립스를 만들었다.
why? 자바코드를 손쉽게 편집할수있다.
Eclipse에서 Java EE Developers을 위한 IDE를 다운받는다.
workspace : 이클립스 설치시 workspace폴더가 만들어지고 이안에 프로젝트를 만들수 있다. 다른 workspace를 만들어서 사용해도된다.
퍼스펙티브 : 이클립스에서 프로젝트 상황에 맞게 뷰를 설정 한다.
Package Explorer 뷰 : 프로젝트 계층별 디렉토리를 보여준다.
컴파일 : 자바코드를 저장하면 컴파일되어 bin디렉토리에 저장된다. 윈도우 탐색기로 확인가능하고, 이클립스에서는 보이지 않는다.