JAVA 2011. 5. 31. 00:34
컴퓨터가 기계보다 우수한 이유는 조건에 따라 일을 다르게 할 수 있기 때문이다.

자바에서는 if 문과 switch문으로 조건문을 만들 수 있다.

if 조건문

if 문은 두가지 형식으로 만들 수 있는데 블록이 있냐 없냐이다.

if ( 조건식)
   명령문         

예) if(num1 > num2)
      System.out.println("num1이 더 큽니다");

과 같이 블록이 없는 것과

if ( 조건식 ){
    명령문 
}
 

예) if(num1 > num2){
  System.out.println("num1이 더 큽니다"); 
      } 
과 같이 블록이 있는 것이다. 

if문은 조건식이 참일 때 아래를 수행한다. 

조건문을 만족하지 않을 때에도 일을 수 행하게 하려면 else를 쓰면된다

if(조건식){
  참일 때  명령문
}else{
  거짓일 때 명령문 
}
 
과 같이 사용하면 참 과 거짓일 때를 구분하여 두가지 일을 수행할 수 있다.

if문에 if문을 또 한번 쓸 수있다.

class ifTest {
public static void main(String args[]){
int num1 = 52;
int num2 = 24;
int num3 = 32;
if(num1 > num2) --> 1번
if(num1 > num3) --> 2번
System.out.println("num1이 제일 큽니다");
System.out.println("Done.");
}
}
위와 같이 쓰면 1번이 참이라면 안으로들어가 2번도 검사를 하고 2번도 참이라면 결과값이 출력된다.

dangling else

if문안에 if문사용은 가능하지만 거기다 else까지 넣으면 식이 복잡해진다.

if(num1 > num2)--> 1번
if(num1 > num3)--> 2번
System.out.println("num1이 제일 큽니다");
  else
System.out.println("Done.");

식이 위와 같다면 과연 else가 1번과 짝을 이루는 else인지 2번과 짝을이루는 else인지 

판단하기가 쉽지않은데 이런 else를 dangling else 라고 하는데 danging은

대롱대롱 매달리다라는 의미이다. 자바에선 이 dangling else을 가장 가까운 if문과

짝을 이루라는 규칙이 있기때문에 위에 예제의 2번 if문과 짝을 이루는 else이다.

class dangingelse {
public static void main(String args[]){
int num1 = 152;
int num2 = 173; 
if(num1 > num2) --> 1
if(num1 > 100) -->2
System.out.println("num1 = " + num1 );
else -->3
if(num2 > 100) -->4
System.out.println("num2 = " + num2 );

System.out.println("Done.");
}
}
위 예제는 dangling else를 모르는 사람이 짠

num1과 num2중에 큰 수가 100보다 클 때만 그 값을 출력하는 프로그램이다.

위 예제 에서보면 1을 거친 후 거짓이기 때문에 3번의 else로 빠지겠지 라고 생각하면

dangling else를 모르는거다, dangling else는 가장 가까운 if와 짝을 이루는 것이기 때문에

실질적으론 2번과 짝을 이루는 else이다 , 결과적으로 1번의 if문이 거짓으로 되면

그 안으로 타고들어가지 않고 바로 빠지게되는데 2번의 if문에 접근을 못하니 3번의

else도 당연히 접근을 못한다. 그러므로 1번이 거짓이 되면서 아래 나머지 연산은

모두 수행하지 않고 "Done" 만 찍힌다. 꼭 기억하자 꼭. 

else if 라는 것도 있는데 이는 if문 다음에 와서 다른 조건을 계속 나열하는 것이다 .

class elseif {
public static void main(String args[]){
int num1 = 74;
if(num1 < 10)
System.out.println("num1 = 10미만" );
else if(num1 < 100)
System.out.println("num1 = 10이상 100미만"  );
else if(num1 < 1000)
System.out.println("num1 = 100이상 1000미만"  );
else 
System.out.println("num1 = 100이상"  );
System.out.println("Done.");
}
}

위와 같이 if 다음으로 조건을 주어서 계속 값을 확인하고 그중에 하나라도 맞으면

안의 연산을 수행하고 빠져버린다. 값이 나왔다면 다음 연산을 수행하지 않는다. 

switch  

if문과 같이 식이 참일 때 수행을 하지만 문어다리처럼 여러가지 조건을 만들수 있다.

switch(식){

case 값1:
명령문
break; 

case 값2:
명령문
break;

case 값3:
명령문
break;

default:
명령문
break; 


()안의 식을 계산하고 나서 그에 맞는 값에 따라 case를 통과하고 break;를 만나서

빠져나온다. 식의 결과가 case문 중에 일치하는 문장이 없다면 default에 있는 명령문이

수행된다. 

break;문을 안써도 실행은 되는데 만약 3번 case문에 값을 안썼다면 식의 결과값이

값 3일 때 3번 case문의 명령문을 수행한후 break;가 없기 때문에 아래의 default의

명령문도 수행되어 버린다, 꼭 나쁜것만은 아니지만 깔끔하지 못하다.  

 

'JAVA' 카테고리의 다른 글

JAVA] 11. 매소드 호출문  (0) 2011.06.02
JAVA] 10. 반복문  (0) 2011.05.31
JAVA] 8. 배열의 선언, 생성, 이용  (0) 2011.05.28
JAVA] 7. 여러가지 대입문  (1) 2011.05.26
JAVA] 6. 로컬 변수의 선언과 이용  (0) 2011.05.25
posted by 젊은쎄오
:
JAVA 2011. 5. 28. 00:13
배열이란 열개의 변수가 필요한데 그 변수들이 타입, 목적 등이 비슷하다면 열개의 데이터를 

한 곳에 몰아넣고 변수로 각각 꺼내어 쓸 수 있다. 그 때 쓰는 것이 배열이다.

배열중 가장 단순한 구조가 1차원 배열인데 1차원 배열의 선언은 다음과 같다.

타입 식별자[];(int arr[];)  또는 타입[] 식별자;(int[] arr;) 이다.

하지만 이렇게 선언만 한다고 되는건 아니고 다음과같이 배열을 생성해서 변수에 대입해야한다.

new 타입[크기];(arr = new int[10];) 이렇게 사용해야 한다. 열개의 공간을 만들겠다는 의미이다.

이제 이렇게 만든 배열변수에 값을 넣으려면 그 배열에 몇 번째 인지를 알려주는 인덱스(Index)

값을 넣어주어야 한다. 배열이름[인덱스]; 이렇게 만들고 arr[0] = 12; 이렇게 사용한다. 

예제를 보자

class ArrayExample {
public static void main(String args[]){
int arr[];
arr = new int[10]; // 이렇게 열개의 배열을 생성 했다
arr[0] = 10; // 0번엔 10을
arr[1] = 20; // 1번엔 20을
arr[2] = arr[0] + arr[1]; 2번엔 0번과 1번배열 더한 것을 값으로 대입하였다. 
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
}
}

결과는
10
20
30 으로 나온다.

알아 두고 갈것이 있는데, 왜 로컬변수처럼 선언하지않고 새로 생성을 다시 해줘야하는 이유는

변수를 하나 생성하면 그 변수에 관한 메모리 공간이 만들어지게 되는데

int arr[]; 만 만들면 그야말로 그냥 한 공간 뿐이 만들어지지 않는다. 그렇기 때문에 배열의 

메모리를 만드는 작업을 따로 해줘야하는데 그것이 배열 생성식이다 .

new int[5]; 이렇게 쓰면 다섯개의 공간이 만들어진다. 그럼 위의 배열변수를 선언할 때의

메모리는 어디다쓰냐하면 바로 배열 생성식으로 만든 다섯개의 공간을 참조하려면

참조값이 있어야하는데 이 참조값(reference value)을 담는데에 그 메모리공간을 사용한다.

쉽게말해 arr[0] 의 공간에 12라는 값을 대입했다면 얘를 쓰려할 때 이 12라는 값을 가리키는 

값이 들어가있다. 말이 어려운데 계란 한 판을 가져다 놓았다고 치고, 두번째줄에

첫번째 계란을 가져와라 라고 한다면 이  '두번째줄에 첫번째 계란을 가져와라' 라는 것이

참조값이고, 이 참조값을 담아두는곳이 아까 int arr[]; 여기서 만들어진 메모리이다.

확실히말하면. 참조값이 정확히 얘를 가리키는 주소를 말하는 것은아니다.

다만 우린 그렇게 알고 있으면 되고 나머지는 자바 가상기계가 해준다.

다차원배열도 비슷하다.

타입 식별자[][];(int arr[][];) 또는 타입[][] 식별자;(int[][] arr;) 로 선언한다. 

int[] arr[]; 이것도 되긴된단다. 혼란스러워서 안쓰지만 

2차원 배열의 생성식도 비슷하다. 

new 타입[크기1][크기2]; (arr = new int[10][10]);  이런식이다.


class ArrayExample2 {
public static void main(String args[]){
int arr[][] = new int[10][10];
arr[0][0] = 10;
arr[1][1] = 20;
arr[2][2] = arr[0][0] + arr[1][1];
System.out.println(arr[0][0]);
System.out.println(arr[1][1]);
System.out.println(arr[2][2]);
}
}

역시 같은 
10
20
30 의 결과가 찍힌다. 이런방식으로, 3차원, 4차원 배열이 모두 가능하다.

 * 배열의 초기화와 선언을 한꺼번에 하는 방법.

int arr[] = {10, 20, 30, 40, 50};  이런식으로 한꺼번에 한다. 

class Array1 {
public static void main(String args[]){
int arr[] = {10, 20, 30, 40, 50}; 
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
System.out.println(arr[3]);
System.out.println(arr[4]);
}
}
돌리면 10,20,30,40,50 쭉 찍힌다. 

다차원도 마찬가지이다.

int arr[][] = { {1,2,3}, {4,5,6}, {7,8,9}}; 이런식으로 중괄호로 구분을 지으면 된다 .

마지막으로 배열의 길이를 알아보는 방법인데, 배열이 위 예제처럼 열가지정도면 크기를

알기쉽지만, 복잡하고 긴 로직에선 알기 쉽지않다 그럴땐 배열이름 뒤에 .length를 붙여준다.

class arrayexam {
public static void main(String args[]){
int arr[] = {10, 20, 30, 40, 50}; 
System.out.println(arr.length);
}
}

이렇게 써주면 5 라고 찍힌다, 위에 배열 갯수를 세어보면 다섯개가 맞다.  

배열, 편하다, 잘쓰고있다 고마워
 




출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다. 

'JAVA' 카테고리의 다른 글

JAVA] 10. 반복문  (0) 2011.05.31
JAVA] 9. 조건문  (0) 2011.05.31
JAVA] 7. 여러가지 대입문  (1) 2011.05.26
JAVA] 6. 로컬 변수의 선언과 이용  (0) 2011.05.25
JAVA] 5. 간단한 조건문과 반복문  (0) 2011.05.25
posted by 젊은쎄오
:
JAVA 2011. 5. 26. 22:52
변수를 선언하는 목적은 값을 담아 쓰려는 것인데, 이 값을 담는 명령문을 대입문이라 한다. 

가장 당순한 방법은 = 연산자로 우변의 값을 좌변에 대입하는 식이다.

변수 = 식;  
예) num = 1;  ,
    num1 = num2+ num3;

위와 같이 변수에는 값이 대입될 수 있지만 식이 대입될 수도 있다.



대입문에서는 우변의 식 계산이 다 완료 된 후 좌변으로 대입되기 때문에 

int num = 3;
num = num+2 

이라면 우변의 num에 3이 들어가 3+2 가 된 후 좌변으로 들어가 결과는 num은 5의 값을 가진다

복합 대입 연산자라는 개념도 있는데 이는 += 연산자를 동시에 사용한다 , 

num += 3; 이라면 좌변의 기존 값에 우변의 값을 더한다음 다시 좌변으로 넣는 것이다. 

다르게말해 num = num+3; 과 같은 의미이다.



증가 연산자
감소연산자 개념도 있는데 이는 ++ 또는 -- 이다, 

num++; 과 ++num; 은 원래 num 에 1을 증가 시키고 다시 num 에 대입한다.

num--; 와 --num; 은 반대로 num에 -1을 한 후 다시 num에 대입한다. 

복습하는 기분으로 !  






출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다. 

'JAVA' 카테고리의 다른 글

JAVA] 9. 조건문  (0) 2011.05.31
JAVA] 8. 배열의 선언, 생성, 이용  (0) 2011.05.28
JAVA] 6. 로컬 변수의 선언과 이용  (0) 2011.05.25
JAVA] 5. 간단한 조건문과 반복문  (0) 2011.05.25
JAVA] 4. 변수의 선언문과 대입문  (0) 2011.05.25
posted by 젊은쎄오
:
JAVA 2011. 5. 25. 21:57
변수는 매소드 안에 생성 할 수도있고 밖에 생성 할 수 도 있는데 매소드 안에 생성하는 변수를 

로컬 변수(local variable)라 한다.

public class Loacltest {
int var = 3;
public static void main(String args[]){
int num;
num = 10 + 20;
System.out.println(num);
}
}

바로 위 소스에 int num;이 main이라는 매소드 안에 있기 때문에 로컬변수이다 

매소드 밖에 있는 int var = 3; 은 로컬 변수가 아니다.  

로컬 변수도 변수이기에 선언을 반드시 해야하는데 두가지 방법이 있다.

1. 타입 식별자;                            2. 타입 식별자 = 초기값;  
예)                                            예)
int num;                                     int num1 = 0;
float fl;                                       int num2 = 1;
String str;                                   String str = "Hello" ;

이런 식의 방법이 있고, 같은 타입이라면 

int num1, num2;
String aa="hello", bb="JAVA"; 등 과 같이 한번에 선언 할 수도 있다. 

자바에서 사용되는 기초 타입


이 중 String 타입을 제외한 나머지는 프리미티브 타입(primitive type)이라고 한다.

로컬변수의 사용방법은 크게 두가지인데 하나는 변수에 값을 대입하는 것이고 하나는

그 값을 가져다 사용하는 것이다. 로컬 변수를 가져다 쓸 때에는 초기 값이 있어야한다

아래 처럼 초기값이 없는 상태에서 가져다 쓰면 오류가 난다.

int num;
System.out.println(num); 이와 같이 코딩을 한다면 에러가 난다.  

또한 생성한 매소드 밖에서 로컬변수를 사용할 때에도 에러가 난다.



* 값을 바꿀 수 없는 final 변수  

값이 변할 수 있기에 변수라고 하지만, 변수의 값을 바꿀 수 없게 만들 수도 있는데

그 때 쓰는것이 final 키워드 이다.

final int num = 3;

이렇게 하면 딱 한번만 값을 대입 할 수 있다.

 





출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다. 
posted by 젊은쎄오
:
JAVA 2011. 5. 25. 21:19
기계보다 컴퓨터가 좋은 이유중에 하나는 바로 조건에 따라 다른일을 할 수 있다는 것이다. 

이러한 조건에 따라 주어진 일을 하는 명령문을 조건문(conditional statement)라고 하며

자바에서는 키워드인 if 를 이용하여 조건문을 만들수 있다.

public class iftest {
public static void main(String args[]){
int num;
num = 10 + 20;
if (num >10)
System.out.println("계산 결과가 10보다 큽니다");
}
}

위를 보면 num에 30을 대입하고 바로 결과값을 찍지 않고 if (num >10)를 써주었다. 

의미는 'num이 0보다 크다면 아래를 수행하라' 이다. 조건에 맞지않으면 그냥 빠져나온다. 

추가로 명령문 안에 포함된  System.out.println("계산 결과가 10보다 큽니다"); 이라는 

명령문은 부명령문(substatement) 라고 부른다.


주어진 처리를 반복해서 열번을 해야한다고 조건문을 열개를 주는 것은 비효율적이기 때문에

이때는 주어진 일을 반복하는 반복문(iterative statement)을 써야 한다. 


public class whiletest {
public static void main(String args[]){
int num;
num = 0;
while (num < 5){
System.out.println("Hello");
num = num + 1;
}
}
}

일단 num =0; 이기 때문에 num에는 0이들어가 있고 while문에 들어간다.  

while (num < 5) 조건을 보면 5 미만 까지의 의미고 그건 0,1,2,3,4 의 값만이 while문의 

조건을 충족 시키는것이 된다.  num 이 처음 들어가면 0 이기 때문에 조건을 만족하고 

while안으로 들어간다 그러면서  System.out.println("Hello"); 으로인해 Hello 가 한번 찍히고

num = num + 1; 을 지나기 때문에 num에 +1을 한 정수가 num 주머니로 들어간다, 

즉 0이었던 num주머니가 1로 바뀐다. while문은 조건을 만족한다면 계속 돌기 때문에

1,2,3,4 까지 돌며 Hello를 다섯번 찍어낸다 그러고 num이 5가 되면 조건에 만족하지 않기에

밖으로 빠져나온다. 맨날 헷갈리던게 num = num + 1 이었다. num이 0일때를 보면

0 = 0+1 과 같다. 그걸 해석하면 뒤에 0+1이 앞에 0에 대입이 되는건데 자꾸 수학의 이퀄이랑

착각을 해서 머리아팠던 기억이 난다.. 





출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다. 
posted by 젊은쎄오
:
JAVA 2011. 5. 25. 20:31
앞에 첫번째 글을 보면 System.out.println("Hello, Java"); 를 써서 Hello, Java를 출력해보았다.

하지만 이렇게 직접 써넣는것보다 변수를 이용하여 보다 효율적인 프로그래밍을 할 수 있다.

자바프로그램에서는 변수를 사용하기 전에 먼저 변수 선언을 해야한다. 처음 자바를 공부할 때

이 선언이라는 개념을  얘를 써도 되겠냐 허락을 받는 문장이라 생각하며 외웠다. 흐흐

변수 선언이란, 이 변수의 이름과 타입을 정하여 이런 변수를 쓰겠다고 컴퓨터에게 알리는 것으로

변수 선언을 해야만 그 변수를 그 타입에 맞게 사용할 수 있다.

예를 들어 num이라는 이름의 정수 변수를 사용하고 싶다면

int num; 이라고 선언을 해야한다 앞에 int 정수타입을 의미하고 num은 그 정수타입의 변수이름이다.

이렇게 변수를 선언하는 명령문을 선언문(declaration statement)라고 한다.

변수를 선언하고 이 변수에 값을 담을 수 있다. 변수는 주머니 같은 개념으로 값을 담을 수 있는데

이와같은 개념을 대입이라고 하며 = 기호를 사용한다.

num = 10 + 20; 을 보면 아까만든 정수 변수 num 에 10과 20을 더한 정수를 넣는다는 소리다

결과적으로 num엔 30이 들어가고 이 넘을 System.out.println(num); 이렇게 찍으면 

화면에 30이 출력된다. 처음 봤을 때 변수를 변하는 수로 외웠던 기억이.. -_-변하니까

무튼, 이런식으로 변수라는 주머니를 만들려면 그 안에 들어가는 데이터의 타입을 

문자열이면 String, 정수면 int 이런식으로 선언하고 사용해야 하며 

그 변수에 값을 대입했다면 이제부턴 그 변수를 가지고 쓰면 된다. 



  출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다.
posted by 젊은쎄오
:
JAVA 2011. 5. 25. 19:46
자바에서는 세가지의 단어의 종류를 사용한다. 미리 약속된 의미를 갖는 키워드(Keyword) 와 특별한 

상수가 표현하는단어, 그리고 마지막으로 클래스, 매소드, 변수등에 붙이는 단어이다.

class, public, void 등과 같은 클래스나, 매소드 앞에 써주어야 할,  자바언어를 만든사람들이 

미리 정해놓은 것이 키워드이다. 종류는 아래와 같다.

<자바에서 사용하는 키워드>



 <자바에서 사용하는 상수값을 표현하는 단어>




이와 달리 클래스, 매소드, 변수에 붙이는 이름처럼 프로그래머가 나름 정할 수 있는 이름을 

식별자(identifier)라고 하며, class HelloJAVA 에 HelloJAVA, public void sum(); 에 sum이 

식별자에 해당한다, 프로그래머 마음대로 이름을 정할 수 있다. 관련있는 단어나 의미로 정하는게 바람직하다

식별자는 임의로 정할 수 있는 만큼, 같은 단어를 쓰는 상황도 나온다, 그럴 때는 그 식별자의 

소속을 쭉 앞에 나열해야 하는데 우선 구분짓는 것은 온점(.)을 사용한다. 예를들어

같은 사무실이라도 경기도.의정부시.사무실 과 경기도.양주시.사무실 이런식으로 말이다

실제 코드에서는 System.out.println이다 System은 클래스이름, out은 그 클래스에 속한 변수의이름,

println은 그 변수에 속하는 매소드 이름이다.


기호 쪽을 보면 (),{},[] 등으로 영역을 구분하기 위한 기호와 System.out.println("Hello"); 를 보면

" " 로 싸여있는 텍스트를 자바에서는 문자열(String)이라고 부르고 이 안은 한덩어리로 보기때문에

띄어쓰기를 하던 한,영문을 섞어쓰던 생각할 필요가 없다,

세미콜론(;) 은 문장의 마지막을 뜻한다. 한문장이 끝나면 꼭 찍어줘야한다, 안찍으면 에러가난다

기본적인 것들이니 훑고 지나가면 될것같다. 







출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다. 

posted by 젊은쎄오
:
JAVA 2011. 5. 25. 00:29
자바는 JDK라는 자바 컴파일용 소프트웨어를 설치 한 후 컴파일이 된다. 

먼저 컴파일(compile)에 대하여 알아보면

컴퓨터는 모든 명령을 기계어(machine language)로 수행하는데

이 기계어는 01011101001001 이런식으로 0과 1로 구성되서 사람이 보기 매우 힘들다,

그에 반면 컴퓨터가 보기에는 사람의 언어가 모호하고 부정확해서 수행을 할 수가 없다, 그렇기 때문에

사람도 보기 편하고, 정확한 문법과 규칙으로 되어 컴퓨터도 보기편한 프로그래밍언어(programing

language)
 라는 것을 사용하여 프로그래밍을 하는데 이 소스를 기계어로 번역하는 것이 컴파일, 

컴파일 해주는 소프트웨어가 컴파일러(compiler) 이다. 언어마다 컴파일러가 다르지만 자바에서의

컴파일러가 JDK이다. 그러므로 자바프로그래밍을 하려면 JDK는 필수이다. 

자바는 컴파일을 할 때 java.exe를 실행 한다. 이유는 아래에 있다.

C나 다른 언어들은 컴파일러가 만든 실행파일을 바로 실행 할 수 있다.

이는 아예 컴파일러가 하드웨어와 운영체제에 꼭 맞는 기계어 코드파일을 만들기 때문이다. 

하지만 자바컴파일러는 자바 가상기계(Java Virture Machine, JVM) 에 맞는

가상 기계어로 만들고 그 파일이 .class로 떨어지는 클래스 파일이다.

자바 가상기계는 가상기계어(class파일)를 진짜 기계어(0101)로

만들 수 있는 능력이 있는데 이 자바가상기계를 실행 하는 일을 java.exe가 하기 때문이다.

여기서 왜 자바는 바로 다른 언어처럼 기계어로 번역해서 수행하지 않냐는 의문이 드는데 

이는 콘센트의 플러그를 생각하면 된다. 110v와 220v라는 다른 환경의 운영체제와 하드웨어가  있다 치자,

다른언어는 컴파일러가 110v면 110v, 220v면 220v 로 만든다, 그러기에 220v로 만들어진 결과물을 110v에선

사용 할 수 없는 상황이 온다, 하지만 자바는 자바가상기계가 전압을 교체 시켜주는 플러그 역할을 한다.

그러기에 110v로 소스를 만들던 220v로 소스를 만들던 자바 가상 기계가 중간에서 다리역할을 하여

어떤 운영체제, 하드웨어에서든 JDK만 깔아주면 그 안에 있는 자바가상기계가 클래스파일을 

번역하여 그대로 실행 할 수 있다는 장점이 있다. 

페이지로 보면 한 장이지만 엄청난 정보가 들어있었다.. 




  출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다.
posted by 젊은쎄오
:
JAVA 2011. 5. 24. 23:56
자바책을 한 권 사서 처음부터 되도록 매일 공부한 결과물을 포스팅하려고 한다. 

부끄럽지만, 만화책 완결은 많이봤어도 공부책을 끝까지 뗀건 교과서밖에 없다.

그 부끄럼을 없애는 계기가 되길 ! 

 자, 오늘 공부한 것은 HelloWorld 띄우기 이다, 

전체적인 코드는 아래와 같다.


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

클래스(class)는 자바 프로그램을 구성하는 단위이고 하나에서 여러개의 클래스로 구성 될 수 있다.

클래스에는 이름과 본체가 있고, 위 코드에서 클래스이름은 helloworld, 본체는 빨간 중괄호이다

매소드(method) 는 간단히 명령문들의 묶음이다. 매소드도 클래스와같이 이름과 본체가 있고 

위에서 매소드의 이름은 main , 본체는 파란색 중괄호이다.

매소드의 이름은 프로그래머가 임의로 정할 수 있지만, main이라는 매소드는 반드시 존재해야 하며

다른이름으로 바꿔서도 안된다. 그 이유는 자바프로그램이 항상 처음에 main 매소드를 실행하기 때문이다.

지금와서보면 간단하고 당연한건데 처음봤을 땐 정말 이해하는데 오래걸렸다..  




출판사 : 한빛미디어 , 저자 : 김윤명 님의 뇌를 자극하는 Java프로그래밍에서 공부한 내용입니다. 
posted by 젊은쎄오
: