본문 바로가기

Java Programming

변수 초기화와 메인 메소드

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
이것도 도장에서 시험문제를 풀다가 나온건데요 +_+;; 변수 초기화에 관해서 문제가 나왔습니다. 메인 메소드에서 초기화 되지 않은 정수형 값에 1을 더한후에 그 숫자를 콘솔창에 띄우는 코드 였습니다. 또.. 당연히.. 초기화 되지 않은 정수형 값은 0으로 자동으로 되겠거니 했지만.. -_-;; 전혀 아닙니다.

예제를 위하여 소스코드를 한번 짜봤습니다.


위와 같은 소스코드를 실행시켜보면 총 3가지의 컴파일 에러가 발생합니다. 일단 첫번째로 발생하는 static 변수에 관한 에러는 잠시 제쳐두고 밑의 두가지 경우는 변수 초기화가 되지 않았기때문에 에러가 발생하게 되는데요. 메인 메소드가 내부에 변수를 선언하지 않은 경우(메인메소드 위쪽)에는 자동으로 초기화가 되는것을 알 수 있습니다. Int형 같은 경우는 0, double형은 0.0, String 의 경우는 null 값으로 자동으로 초기화가 됩니다. 하지만 지역변수로 메인메소드 내부에 선언한 변수들은 초기화를 해주지 않으면 사용할 수 없는 것을 확인 했습니다.

이제 첫번째로 발생시킨 에러에 대해서 알아 보아야 하는데.. 메소드 내부에서 static 변수를 할 수 있을까..? 하고 호기심에 해보았습니다만 역시 안됩니다 ^^; 멤버변수처럼 static 변수도 메소드 밖에서 선언을 해줘야 합니다.

상당히 쉽게 지나칠 수 있는 굉장히 간단한 피드백이었습니다. 기본기를 탄탄히 다져야겠다는 생각이 많이 들었습니다. 처음부터 미리 탄탄하게 하면 좋지만.. 이런 피드백으로 더 잊혀지지 않는 공부를 할 수 있었습니다.