1 minute read

Categories:

Tags: ,

Java ์†Œ๊ฐœ

1991๋…„์— ์ฒซ ๋“ฑ์žฅ, ์ฌ ๋งˆ์ดํฌ๋กœ์‹œ์Šคํ…œ์ฆˆ์˜ ์ œ์ž„์Šค ๊ณ ์Šฌ๋ง๊ณผ ๋™๋ฃŒ๋“ค์ด ๊ฐœ๋ฐœ.

Java๊ฐœ๋ฐœ ๋ฐฐ๊ฒฝ

์›๋ž˜๋ชฉ์ : ์…‹ํ†ฑ ๋ฐ•์Šค ๋“ฑ์˜ ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ์€ ๋‹ค์–‘ํ•œ ๊ธฐ๊ธฐ์™€ OS๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Œ ๊ธฐ์กด ์–ธ์–ด๋Š” ๊ฐ ํ”Œ๋žซํผ๋งˆ๋‹ค ์ปดํŒŒ์ผ์„ ํ•ด์•ผํ–ˆ์Œ. ํ•œ๋ฒˆ๋งŒ ๋นŒ๋“œํ•˜๋ฉด ์–ด๋–ค ํ”Œ๋žซํผ์—์„œ๋“  ์ž‘๋™ํ•˜๋Š” ์–ธ์–ด๋ฅผ ๋งŒ๋“ค๊ฒŒ ๋จ.

ํ•˜์ง€๋งŒ ๊ฐ‘์ž๊ธฐ ๊ณ ์† ์„ฑ์žฅํ•˜๋˜ ์ธํ„ฐ๋„ท์— ๋งž์ถฐ ๊ทธ์ชฝ์œผ๋กœ ๋ฐฉํ–ฅ์„ ๋ฐ”๊พธ๋ฉฐ ๋Œ€์ค‘ํ™” ๋งค๋‹ˆ์ง€๋“œ ์–ธ์–ด๊ธฐ์— ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋ฅผ ๋œ ์‹ ๊ฒฝ์จ๋„๋จ ๋”ฐ๋ผ์„œ ๊ธฐ๊ณ„์™€ ์•„์ฃผ ๊ฐ€๊น์ง€ ์•Š์€ ๊ฐœ๋…์„ ์ฝ”๋“œ๋กœ ์˜ฎ๊ธฐ๊ธฐ์— ์‚ฌ์šฉํ•˜๊ธฐ ์ ํ•ฉ

Lecture2: Java ๊ธฐ๋ณธ๋ฌธ๋ฒ•

๋ฉ”์ธ ํ•จ์ˆ˜:

public class HelloWorld
{
	public static void main(String[] args)
	{
		System.out.println("Hello POCU");
	}
}

<์ ‘๊ทผ ์ œ์–ด์ž> class <ํด๋ž˜์Šค๋ช…> { ... }

  • Java ์—์„œ๋Š” ์–ธ์ œ๋‚˜ ํด๋ž˜์Šค๊ฐ€ ํ•„์š”ํ•จ.
  • ํ•œ .java ํŒŒ์ผ์—๋Š” ์ตœ๊ณ ๋ ˆ๋ฒจ public ํด๋ž˜์Šค๊ฐ€ ํ•˜๋‚˜๋งŒ ์žˆ์–ด์•ผํ•จ

๋‚ดํฌ ํด๋ž˜์Šค

  1. ํด๋ž˜์Šค ์•ˆ์— ๋‹ค๋ฅธ ํด๋ž˜์Šค๋ฅผ ๋„ฃ์„์ˆ˜ ์žˆ์Œ
    • ์•ˆ์— ์žˆ๋Š” ํด๋ž˜์Šค๋ฅผ ๋‚ดํฌ(nested) ํด๋ž˜์Šค๋ผ ๋ถ€๋ฆ„
    • ์ค‘์ฒฉ ํด๋ž˜์Šค, ๋‚ด๋ถ€ ํด๋ž˜์Šค๋ผ๊ณ ๋„ ๋ถ€๋ฆ„
  2. ๋‚ดํฌ ํด๋ž˜์Šค๋Š” public ์ด์–ด๋„ ์ƒ๊ด€ ์—†์Œ

main ํ•จ์ˆ˜

  • ํ”„๋กœ๊ทธ๋žจ์˜ ์‹œ์ž‘์ (entry point)
  • public static void main(String[] args)
    • ๋ฐ˜๋“œ์‹œ ์ด ์‹œ๊ทธ๋‚ด์ฒ˜(signature) ๋Œ€๋กœ main ํ•จ์ˆ˜๋ฅผ

์ถœ๋ ฅ๋ฌธ๊ณผ ๊ฐ€๋ณ€์ธ์ž

System.out.println(โ€œHello Worldโ€);

System.out.println(12345);
System.out.println("Your Score is" + 100);
  • ํ‘œ์ค€ ์ถœ๋ ฅ(standard output)์œผ๋กœ ํ•œ ์ค„์„ ์ถœ๋ ฅํ•˜๋Š” ํ•จ์ˆ˜
    • ln์€ line์„ ์˜๋ฏธ
  • ๋ฌธ์ž์—ด ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ˆซ์ž๋„ ์ถœ๋ ฅ -> ํ•จ์ˆ˜์˜ค๋ฒ„๋กœ๋”ฉ

System์€ ํด๋ž˜์Šค out์€ systemํด๋ž˜์Šค์˜ ์ •์ (static) ๋งด๋ฒ„ ๋ณ€์ˆ˜ - ์ด๋•Œ out ์˜ ์ž๋ฃŒํ˜•์€ PrintStream ํด๋ž˜์Šค, ์ฆ‰ out์€ ๊ฐœ์ฒด(object), PrintStream์€ Java์˜ ํ‘œ์ค€ ์ถœ๋ ฅ ์ŠคํŠธ๋ฆผ

Java์—๋„ printf()๊ฐ€ ์žˆ๋‹ค `public PrintStream printf(String format, Objectโ€ฆ args);

์ด๋•Œ Object... args ์€ ๊ฐ€๋ณ€์ธ์ž๋‹ค. c์™€ ๋‹ค๋ฅด๊ฒŒ โ€ฆ์•ž์— <์ž๋ฃŒํ˜•>์„ ๋ฐ˜๋“œ์‹œ ๋„ฃ์–ด์•ผํ•œ๋‹ค. ํ•ด๋‹น ์ž๋ฃŒํ˜•์˜ ๋ฐ์ดํ„ฐ๋งŒ ์ด์ž๋กœ ์ „๋‹ฌ ๊ฐ€๋Šฅํ•˜๋‹ค. ํ•˜์ง€๋งŒ Object๋ผ๋Š” ์ž๋ฃŒํ˜•์„ ์“ธ ๊ฒฝ์šฐ ๋ชจ๋“  ์ž๋ฃŒํ˜•์„ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค.

String name = "Mumu";
int score = 64;
System.out.printf("%s's score: %d\n", name, score);

์›๋ž˜ println()๋งŒ ์žˆ๋‹ค๊ฐ€ ๋‚˜์ค‘์— ์ถ”๊ฐ€๋˜์—ˆ๋‹ค.

์ƒˆ์ค„ ๋ฌธ์ž๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋งค์„œ๋“œ๋Š” ํ”Œ๋ž˜ํผ๋งˆ๋‹ค ๋‹ค๋ฅด๋‹ค.

  • Linux: \n๋ฐ˜ํ™˜
  • Windows: \r\n ๋ฐ˜ํ™˜

์ด๋Š” public static String lineSeparator();๋ฅผ ํ†ตํ•ด์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•ด๊ฒฐ ๊ฐ€๋Šฅํ•˜๋‹ค.

System.out.printf("%s's score: %d%s", name, score, System.lineSeparator());

Package

package <ํŒจํ‚ค์ง€ ๊ฒฝ๋กœ>;
  • ์—ฐ๊ด€๋œ ํด๋ž˜์Šค๋“ค ๋ผ๋ฆฌ ๋ฌถ๋Š” ๊ธฐ๋ฒ•.
  • ๋งˆ์ง€ ๋””์Šคํฌ ์ƒ์˜ ํด๋”์™€ ๊ฐ™์€ ์—ญํ• 
    • e.g. ์‚ฌ์ง„ ํด๋”๋Š” ์‚ฌ์ง„ํŒŒ์ผ์—, ๋™์˜์ƒ ํด๋”๋Š” ๋™์˜์ƒ ํŒŒ์ผ์— ์ €์žฅ

ํŒจํ‚ค์ง€ ์ข…๋ฅ˜

  • ์ž๋ฐ” ๊ธฐ๋ณธ(built-in) ํŒจํ‚ค์ง€
    • ์ด๋ฆ„์ด java๋กœ ์‹œ์ž‘ํ•˜๋Š” ํŒจํ‚ค์ง€๋“ค(java.lang, java.util);
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์ง์ ‘ ๋งŒ๋“ (user-defined) ํŒจํ‚ค์ง€

ํŒจํ‚ค์ง€์˜ ๋ชฉ์ 

์ด๋ฆ„ ์ถฉ๋Œ ๋ฌธ์ œ๋ฅผ ํ”ผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์คŒ ๋‹ค๋งŒ ํŒจํ‚ค ์ด๋ฆ„์˜ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•ด์•ผํ•จ ๊ทธ๋ž˜์„œ ๋ณดํ†ต ํšŒ์‚ฌ์˜ ๋„๋ฉ”์ธ ๋ช…์„ ํŒจํ‚ค์ง€ ์ด๋ฆ„์— ์‚ฌ์šฉ(๋‹จ, ์—ญ์ˆœ์œผ๋กœ)

  • e.g., ์‚ผ์„ฑ(samsung.com)์—์„œ ํŒจํ‚ค์ง€๋ฅผ ๋งŒ๋“ค ๊ฒฝ์šฐ -> package com.samsung.<ํŒจํ‚ค์ง€ ์ด๋ฆ„>;
package code.sample;

//์ด ์ฝ”๋“œ๊ฐ€ ์œ„์—์žˆ๋Š” ํŒจํ‚ค์ง€์— ์†ํ•œ๋‹ค๋Š” ๋œป 
public class HelloWorld
{
	public static void main(String[] args)
	{
		System.out.println("Hello POCU");
	}
}

์ฃผ์˜: ํŒจํ‚ค์ง€ ์ด๋ฆ„๋งŒ ์ ์œผ๋ฉด ์•ˆ๋จ, ํŒจํ‚ค์ง€๋ช…๊ณผ ๋˜‘๊ฐ™์€ ํด๋” ํŠธ๋ฆฌ์— .java ํŒŒ์ผ์„ ๋„ฃ์–ด์•ผํ•จ (IDE ์‚ฌ์šฉํ•˜๋ฉด ์•Œ์•„์„œ ํ•ด์คŒ)

Leave a comment