https://www.oracle.com/technetwork/java/javase/downloads/index.html
링크를 타서 맨아래 Java Archive 오른쪽 Downlaod를 클릭한다.
Java SE 8 버전을 다운받고 싶으면 (8u202 and earlier)를 클릭하여 받고싶은걸 받으면 된다.
8u211 and later은 유료이다.
JDK를 설치했다면 jdk가 설치된 디렉토리의 bin이라는 하위 디렉토리에 javac.exe와 java.exe 파일이 저장되어 있을 것이다. 혹시라도 java.exe만 있고 javac.exe가 없다면 jdk가 아닌 jre를 설치한 것이므로 다시 jdk를 다운로드 받도록 하자.
- JDK는 Java Development Kit이고 JRE는 Java Runtime Environment이다.
- JDK는 개발용 패키지, JRE는 Java 프로그램을 돌리기 위한 인것이다. 즉 JVM을 실행하기 위한 패키지이다.
- JVM(Java Virtual Machine)은 자바 소스코드로부터 만들어지는 자바 바이너리 파일(.class)을 실행할 수 있다.
- JDK안에는 JRE가 포함되어 있다.
javac는 java compiler의 약어이다. 즉 자바파일을 컴파일할 때 사용하는 것이 바로 javac.exe 파일이다. 컴파일이란 프로그래머가 작성한 소스코드를 컴퓨터가 이해할 수 있는 말(기계어)로 바꾸는 행위이다. 모든 프로그래밍 언어에는 컴파일러 또는 그와 비슷한 기능을 하는 것들이 있다.
위 그림에서 Compiler는 javac.exe에 해당되고 Java VM은 java.exe에 해당된다.
위 그림을 순서대로 서술하면 다음과 같다.
- 소스코드(MyPrograme.java)를 작성한다.
- 컴파일러(Compiler)는 자바 소스코드를 이용하여 클래스 파일(MyProgram.class)을 생성한다. 컴파일 된 클래스 파일은 Java VM(Java Virtual Machine)이 인식할 수 있는 바이너리 파일이다.
- Java VM(JVM)은 클래스 파일의 바이너리 코드를 해석하여 프로그램을 수행한다.
- MyProgram 수행 결과가 컴퓨터에 반영된다.
프로그램 작성을 도와주는 툴들이 있다. 이러한 툴들은 IDE(Intergrated Development Environment), 통합개발환경이라고도 부른다. 자바 프로그래밍을 도와주는 IDE중 가장 많이 사용되는 것이 바로 "이클립스"라는 프로그램이다.
이클립스 다운
https://www.eclipse.org/downloads/packages/
이클립스 종류가 여러가지 있어서 복잡하지만 Java와 Web 개발자는 윗 사진에 나온 Eclipse IDE for Enterprise Java Developers를 다운 받으면 된다. Java와 Web 개발자에게 필요한 IDE이다.
그리고 설치파일 보다는 패키지 파일이 좋으므로 패키지 파일을 다운받도록 하자
이클립스를 실행시키고 왼쪽 프로젝트 파일 공간에 우클릭후 new -> Project 클릭
Java 입력후 Java Project 선택후 Next
Project name 입력후 프로젝트 폴더 생성
src폴더 오른쪽 클릭 -> new -> Class 선택
Name 입력후 Finish 선택
패키지는 굳이 안만들어도 Class를 생성할 수 있다. 왜냐하면 default package가 있기 때문이다.
한 패키지 안에 같은 이름의 Class는 있을 수 없다.
HelloWorld.java 파일에 다음과 같이 main 메소드를 추가 해 보자. 그리고 ctrl + f11을 눌러 아래에 출력이 되는지 확인
main 메소드에는 알수없는 public, static, void, String, args[], System.out.println 등이 등장했다. 각각은 일단 가볍게 알아보면 다음과 같다.
- public : 메소드의 접근제어자, public은 누구나 이 메소드에 접근할 수 있다는 의미
- static : 메소드에 static 이 지정되어 있는 경우 이 메소드는 인스턴스 생성없이 실행 할 수 있음을 의미
- void : 메소드의 리턴값이 없음(void: 사전적으로 "텅 빈" 이라는 뜻)을 의미
- String : 문자열을 나타내는 자바의 자료형
- args[] : String 자료형에 대한 변수명으로 args 뒤에 []가 있으므로 한 개가 아닌 여러개의 값으로 이루어진 배열임을 의미
- System.out.println : 표준출력으로 데이터를 보내는 자바의 내장 메소드로 println 메소드로 들어오는 문자열 값을 화면에 출력한다.
'Language > Java' 카테고리의 다른 글
[Java] Network 기초 용어 설명과 InetAddress 클래스를 활용하여 IP와 도메인 이름 다뤄보기 (0) | 2019.08.29 |
---|---|
[Java] 자료형과 증감연산자 이해하기 (0) | 2019.08.25 |
[Java] 추상클래스(Abstract Class)와 인터페이스(Interface) 이해하기 (0) | 2019.04.23 |
[Java] 클래스(Class)와 인스턴스(Instance)의 이해 (0) | 2019.04.23 |
[Java] 제네릭을 이용하여 컬렉션의 여러 타입 파라미터를 받을수 있는 방법 (0) | 2018.08.22 |