반응형
오늘 처음으로 자바로 뭔가를 만들어 봤음;;
만들다가 조금 힘들었던 부분중 하나가 배열 ㅋㅋ
int[] a = new int[10];
a라는 이름으로 크기가 10인 배열을 선언하는 문장이다.
다른 타입도 똑같이 해주면 된다.
이건 금방 찾아서 했는데... 문제는 객체 배열이었다..
객체도 위와 같은 방법으로
student[] std = new student[10];
이렇게 하면 컴파일시 아무 문제도 없다.
하지만... 사용할때 std[1].name = "ABC"; 이렇게 할경우에도 컴파일시 아무 문제가 없다.
실행하면... 오류가 뜬다.. NULL 어쩌고 저쩌고 하는건데...
이것 때문에 엄청 헤맸다;; 결론은 std에 student 공간만 10개 만들었지.. 메모리(?)가 할당안된거 같다
해결방법은 사용전에
for(i=0;i<10;i++)
{
std[i] = new student();
}
이렇게 하나씩 다 해줘야 한다;
만들다가 조금 힘들었던 부분중 하나가 배열 ㅋㅋ
int[] a = new int[10];
a라는 이름으로 크기가 10인 배열을 선언하는 문장이다.
다른 타입도 똑같이 해주면 된다.
이건 금방 찾아서 했는데... 문제는 객체 배열이었다..
객체도 위와 같은 방법으로
student[] std = new student[10];
이렇게 하면 컴파일시 아무 문제도 없다.
하지만... 사용할때 std[1].name = "ABC"; 이렇게 할경우에도 컴파일시 아무 문제가 없다.
실행하면... 오류가 뜬다.. NULL 어쩌고 저쩌고 하는건데...
이것 때문에 엄청 헤맸다;; 결론은 std에 student 공간만 10개 만들었지.. 메모리(?)가 할당안된거 같다
해결방법은 사용전에
for(i=0;i<10;i++)
{
std[i] = new student();
}
이렇게 하나씩 다 해줘야 한다;
반응형
'Programming > JAVA' 카테고리의 다른 글
클래스 기초 (0) | 2009.03.16 |
---|---|
데이터 타입 (0) | 2009.03.16 |
키보드 입력 - 문자열, 숫자 (0) | 2009.03.05 |
소수점 표시 (0) | 2009.03.05 |