2008년 03월 14일
자바기본 소스 해석편
이번 글에서는 자바의 기초 소스를 해석하겠습니다.
자바 개발자를 목표로 한다면 당연히 알아야 좋겠죠?
모든 일은 초석을 잘 다져야 잘 되는 것이기에 그럼 시작해 보겠습니다.
class Hello
{
public static void main(String args[])
{
System.out.println("안녕하세요?");
}
}
위에 보이는 소스가 가장 기본이라고 보시면 됩니다.
모든 자바소스는 class 또는 public class로 시작을 하는데 이게 없으면 아예 안된다는 사실을 알아두세요~
class 앞에 오는 public 부분을 넣을 수도 있고 뺄 수도 있는데 왜 일까 하는 의문이 생기실 거예요.
간단하게 설명하고 넘어갈게요. 처음부터 어렵게 설명하면 흥미가 없어지니까요~
class 앞에 public를 생략해도 아무런 문제가 없다고 보시면 됩니다.
그런데 public를 넣으면 어떠한 일이 벌어지는지 알려드리지요~
조금은 복잡해질 우려도 있겠지만 패키지라는 개념을 알아야 합니다.
"뭐여-_-?" 하는 생각을 할수도 있는데 쉽게 생각합시다.
public가 class 앞에 있으면 다른 집단에서도 작동이 됩니다.
그렇다면 public을 class 앞에서 빼버리면 다른 집단에서 불러서 사용이 불가능 하겠죠?
이제 설명은 끝이구요 그림으로써 보여드리도록 하지요.

그리고 한 파일에는 public class는 하나만 존재가 가능하답니다 ~
class 앞에 붙이는 것은 public 외에도 몇개가 더 있지만 그것은 다음에 시간이 되면 그 때 하도록 하지요 ~
그럼 class 뒤에 붙는 Hello 이녀석을 봅시다.
Hello 는 클래스 이름이고 파일 명과 동일하게 구성하면 됩니다.
좀더 자세한 설명을 하자면 메소드와 데이터가 들어갈 수 있죠 ~
메소드와 데이터 라는 말이 나와서 "음..어려워 지는군" 하는 생각을 하실 수 있기 때문에 일단 넘어가도록 하죠.
이제 가장 긴 소스가 뭐하는 녀석인지 알아봅시다.
public static void main(String args[])
정말 쉽게 가자면 저건 그냥 외우시면 되는데 그래도 간단한 설명은 하고 넘어가도록 하죠.
public static void main(String args[]) < 메인메소드라고 합니다.
그리고 저녀석이 프로그램이 실행 될 때 가장 먼저 호출되는 녀석입니다.
가장 먼저 호출 되기 때문에 어디에서도 접근이 가능해야 하죠. 그러므로 public 으로 시작합니다.
static이 붙으면 메모리에 가장 먼저 올라갑니다. 가장 먼저 호출 되는 것이 public 니까 static를 붙여주면 궁합이 최고겠죠?
간단한 설명이니 이 정도에서 다음으로 ~
void를 붙이는 이유는 메인메소드는 리턴 값이 없습니다. 딱히 갈 곳이 없다고 생각하세요.
다른 곳으로 리턴 되지 못하므로 void를 붙입니다. 단어의 뜻과 동일한 기능이죠.
main은 메인메소드 이름입니다. 메인메소드라면 반드시 main을 써줘야 합니다. 가장 먼저 호출 되기 떄문이죠
가로 묵음으로 되어 있는 (String args[]) 이녀석에 대해서 설명을 하지요
String 형태의 args 라는 이름을 갖는 배열("[]") 이라고 밖에 설명을 못하겠네요.
제가 드릴수 있는 명확한 답은 이렇습니다. 개발자가 저렇게 만들어서
실행되는데 있어서 메인메소드는 main(String args[]) 이것이 꼭 필요하다는 거죠.
교실에서 무슨 일이 생기면 선생님이 반장 어딨어? 하는 것처럼 말이죠.
그럼 다음으로 넘어가도록 하죠.
System.out.println("안녕하세요?"); 이것 또한 좀 길다고 생각하면 길겠죠.
그러나 다행이도 아주 단순한 소스 입니다. 화면에 보여주라는 소스로써 조금 재미있는 것을 알려드리자면
println 대신 print를 써도 된다는 겁니다. ln을 붙이면 내용을 출력하고 다음 줄로 이동해서 동작하라는 뜻입니다.
그냥 print를 쓴다면 다음 줄로 이동하지 않고 끝난 시점부터 다음 동작을 하게 되는거죠.
자세하게 설명하자면 복잡하므로 간단하게 이정도로 넘어가죠.
어느덧 소스설명은 끝난 것 같습니다. 가로 부분이 남아 있긴 하지만 저건 묶음입니다.
가장 먼저 설명을 했어야 하는 부분일지도 모르겠지만 가장 마지막에 설명하게 되네요.
아래 소스를 보면
class 클래스이름
{
클래스 변수를 선언할 수 있는 곳
public static void main(String args[])
{
실행에 필요한 기술들 다시 말하면 계산식이나 출력방식 이런 것들이 들어가죠
}
}
"(1+1) * 3" 이 계산식을 풀 줄 알면 가로가 있어야 하는 이유를 설명 하지 않아도 됩니다. 설명이 필요 없겠죠^^?
캄사합니다~
# by | 2008/03/14 15:56 | 정리할 자료들 | 트랙백 | 덧글(1)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]