Basic Programming(기초 프로그래밍)/Java

[Java]4강. Hello, World 분석해보기

Master_Worm 2021. 3. 15. 04:41

지난 시간에는 Hello, World를 타이핑 해보았다. 그렇다면 Hello, World에 대한 이야기를 해보도록 하자.

[Java]Hello World! 출력하기 

public class Main{

}

자바 프로그램에서의 기본 골자는 이러한 형태로 생겼다. 바로 

 

1. public class이다.


자바 프로그램 상에서 public class는 가장 기본이 되는 것 중 하나이다. 자바 프로그램은 기본적으로 하나 이상의 class로 구성되어 있으며, 이러한 class 들이 모여 다양한 일을 하는 프로그램이 되는 것이다. class의 이름은 Main말고도 다양하게 가질 수 있다. 원하는 이름은 모두 class의 이름이 될 수 있지만 숫자로 시작하는 것은 안된다. public은 접근 제어자로 접근을 제한하는 기능을 하는 문법이다. 이는 접근에 제한이 없는 것을 의미하며, 접근제어자로는 protected, default, private를 사용한다. 객체지향에서 이러한 접근 제한 아주 중요한 역할을 한다. (대표적으로 객체지향에서 캡슐화라는 단어가 나오는데, 캡슐화의 장점 중 하나는, 해열제로 예를 들자면, 실제 세상에서 약을 먹을 때, 그 속에 어떤 성분이 있는지 모르지만 약을 먹으면 열이 내리는 역할을 해준다. 우리는 약에 대한 성분을 아무것도 모르더라도 약효가 무엇인지만 알고도 사용할 수 있는 것이다. ) 물론 객체지향에 대해 더 자세히 이야기하면 끝도 없지만 대략적인 느낌은 그러하다.

 

앞서 보았던 웹 컴파일러에서도 Ideone으로 클래스 이름을 지정했다. 

public static void main(String[] args) {
}

그 다음으로 오는 내용은 main 메소드이다. main은 전체 프로그램 상에서 하나의 main을 갖는다. 실제로 프로그램이 구동되는 공간으로써, 프로그램이 시작되는 공간이라 생각하면 편하다. 앞서 본 public말고도 static이 존재하는데, 프로그램이 시작하는 시작 공간이다 보니, 처음부터 메모리 상에 존재하게끔 만들어주는 역할을 한다고만 알아두자. 나중에 다시 이야기하도록 하겠다.

 

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

마지막으로 Hello, World를 출력해주는 구문이다. 이는 자바 표준 입출력 클래스에 들어있는 함수이다. 세 부분으로 이루어져 있다. System + out + println으로 해석해도 좋다. 당연히 System은 시스템이라는 말에서 볼 수 있듯이 컴퓨터의 기본적인 일을 처리하는 공간이 될 것이며, out은 밖으로 나가는 출력 시스템, print + ln이므로 무엇인가가 프린트를 된다고 볼 수 있다. 마지막 ln은 새로운 라인을 넣어준다는 New Line과 같다. 

 

비슷한 메소드로써 System.out.print("Hello, World") 가 있다. 이 메소드는 데이터를 출력한 이후에 줄 바꿈을 하지 않는다. 

 

이렇듯 한 개의 간단한 프로그램을 보더라도 많은 키워드가 있음을 확인할 수 있다. 우리는 이러한 키워드를 모두 외울 필요는 없다. 다만 중간중간에 필요할 때마다 찾아봐야 한다. 이렇게 많은 키워드를 어떻게 외울 수 있겠는가? 물론 자주 쓰다보면 외울 수야 있다. 하지만 너무 많기 때문에 외우지 않고 레퍼런스를 찾아보면서 쓰는 것이다. 그러므로 레퍼런스를 자주자주 들여다 보는 습관을 갖는 것이 좋다. 

 

en.wikipedia.org/wiki/List_of_Java_keywords 

 

List of Java keywords

A snippet of Java code with keywords highlighted in blue and bold font In the Java programming language, a keyword is any one of 52 reserved words[1] that have a predefined meaning in the language; because of this, programmers cannot use keywords as names

en.wikipedia.org

위키피디아에는 많은 자바 키워드가 정리가 되어 있다. 구경하고 싶은 사람은 구경해도 좋다.