언어 자료구조 알고리즘/디딤돌 Java 언어 Part1

1.3 Hello World 프로그램 개발

언제나휴일 2016. 4. 4. 08:26
반응형

출간일 2016년 11월 28일

판매가 2000원

형태 ebook


이 책의 모든 내용은 http://ehpub.co.kr에 공개하고 있습니다.

학습에 도움이 되시면 ebook을 구입하여 소장하시면 감사하겠습니다.

언제나 휴일 출판사의 수익금의 대부분은 아프리카에 기부하고 있습니다.



 

1. 3 Hello World 프로그램 개발

 

 이제 이클립스 환경에서 그 유명하고 단순한 "Hello World" 프로그램을 작성해 봅시다. 단순히 콘솔 화면에 "Hello World"를 출력하고 엔터를 입력받으면 종료하는 프로그램입니다.

 

1.3.1 소스 편집

 

 먼저 Java 프로젝트를 생성합니다. 파일 메뉴의 [New] => [Java Project]를 선택하세요.



[그림 1.20] 프로젝트 생성 1

 

  

 New Java Project 창에서 프로젝트 제목과 실행환경을 선택 후 Finish버튼을 클릭합니다.



[그림 1.21] 프로젝트 생성 2

 

 

 이제 프로젝트에 클래스를 하나 추가합시다. java 프로그램은 최소 하나 이상의 클래스를 필요한데 프로그램을 구성하는 개체 형식을 정의한 것입니다.



[그림 1.22] 클래스 추가 1

 

  

 여기서는 클래스 이름을 Program이라 정할게요.



[그림 1.23] 클래스 추가 2

 

 

 

 

 

 

 이제 Program 클래스를 정의할 Program.java 소스 파일이 만들어졌습니다. 이제 목적에 맞게 프로그램 코드를 작성할 단계입니다.

 

 아래 [소스 1.1]처럼 작성하세요.

 

//Hello, World 프로그램

//장문석 2014. 4

import java.util.Scanner;

 

public class Program {

    //진입점 메서드

    public static void main(String[] args){

        //문자열 출력

        System.out.println("Hello World");

        //입력 개체 생성

        Scanner scanner = new Scanner(System.in);

        //입력

        scanner.nextLine();

    }

}

[소스 1.1] Program.java

 

 

 

1.3.2 프로그램 실행

 

 그리고 Run 메뉴나 Ctrl+F11로 실행합니다.



[그림 1.24] 실행 1

 

 Run As 창에서 Java Application 항목을 선택하여 실행 유형을 선택합니다.



[그림 1.25] 실행 2

 

 

 이클립스에서 실행시키면 콘솔 탭에 실행 결과를 확인할 수 있습니다.



[그림 1.26] 실행 3

 

 명령어 창에서 Java [진입점을 소유한 클래스 이름]으로 실행해 볼 수도 있습니다.



[그림 1.27] 명령 창에서 실행

  

 

 그리고 노트 패드(notepad.exe)로 배치 파일을 만들어 실행하기 편하게 만들 수도 있습니다.

 

java Program

[파일 1.1] HelloWorld.bat

 


[그림 1.28] 명령 창에서 배치 파일로 실행

 

1.3.3 소스 설명

 

//Hello, World 프로그램

//장문석 2014. 4

 Java 언어에서는 프로그램의 논리 전개를 개발자가 이해하기 쉽게 주석을 작성할 수 있습니다. 주석은 단순히 프로그램의 논리를 설명하기 위한 것이고 Java 바이트 코드에는 포함하지 않습니다. Java에서의 주석은 [//주석 혹은 /* 주석 */]으로 표현할 수 있습니다.

 

import java.util.Scanner;

 Java 언어로 프로그램을 작성할 때는 제공하는 기술을 사용할 수 있습니다. 이 때 사용하려는 것의 이름의 충돌을 방지하기 위해 namespace를 포함하여 충돌을 방지합니다. 개발에서 간단한 이름을 사용하기 위해 import 문을 이용할 수 있습니다.

 

public class Program {

}

 Java 언어로 프로그램을 작성할 때 데이터와 수행할 일에 관한 문법을 이용합니다. Java언어는 관리할 데이터의 종류에 따라 형식을 정의할 수 있는데 대표적인 것이 class입니다. Java 언어의 특징을 말할 때 개체 지향 프로그래밍 언어라고 말하는데 개체 지향을 위해 반드시 필요한 것이 class 입니다. 이 책의 많은 부분은 class에 관한 설명이 될 것입니다.

 

 

//진입점 메서드

public static void main(String[] args){

}

 Java로 작성한 프로그램을 실행할 때 개발자가 정의한 코드 중에 시작하는 부분이 있어야 합니다. 이를 진입점이라 말하며 정적[1] 메서드 main입니다.

 

//문자열 출력

System.out.println("Hello World");

 Java에서는 콘솔 화면에 출력할 때 사용할 수 있는 System.out의 다양한 버전의 print 메서드를 사용할 수 있습니다.

 

//입력 개체 생성

Scanner scanner = new Scanner(System.in);

 Java에서는 입력 스트림에서 데이터를 입력받는 Scanner 클래스를 제공하고 있습니다. 그리고 특정 클래스 형식의 개체를 생성할 때는 new 키워드와 클래스 이름과 생성에 필요한 인자를 사용합니다. 이처럼 형식 이름과 같은 이름의 메서드를 성성자라 부릅니다. 기본 입력(키보드)에서 입력받는 Scanner 개체를 생성하려면 System.in 을 입력 인자로 전달하여 Scanner 개체를 생성합니다.

 

//입력

scanner.nextLine();

Scanner 형식 개체인 scanner에는 스트림에서 데이터를 입력받는 다양한 버전의 메서드를 제공합니다. nextLine은 엔터를 칠 때까지 입력한 문자들의 집합을 문자열로 반환하는데 여기서는 단순히 입력 대기를 위해 사용한 것이라 nextLine 메서드에서 반환한 문자열을 사용하지 않았습니다.



[1] static 키워드가 붙어 있는 것을 정적이라 말합니다.


반응형