:: 게시판
:: 이전 게시판
|
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
통합규정 1.3 이용안내 인용"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
08/09/11 02:22
array의 index를 0부터 잡으셨으면 length-1까지 있겠지요.. 그래서 말 그대로 out of bound exception이 떴구요.
08/09/11 02:45
public void InputRecord() 함수를 잘못 짜셨네요.
이 함수 자체가 RecordManage 의 멤버 함수인데 왜 이 안에서 다시 RecordManage rManage = new RecordManage(); // 생성자 호출 을 하시는지.. 그리고, 동적으로 크기가 정해지는 array의 경우에는 java의 Vector나 List class를 쓰시는게 좋습니다.
08/09/11 02:58
졍님// C++로 짠걸 그렇게 고치다 보니까-_-)a;;
그리고 생성자 호출을 안하면 객체저장배열을 쓸수가 없게 되니까요-_-)a;; 거기에 SetCount함수까지 써야 하니... ...자바 쥐뿔도 모르니 이렇게 고생을...ㅠ_-
08/09/11 10:36
자세히는 안봤습니다. 윗 분이 inputRecord() 함수에 문제가 있다고 하셔서 그 부분만 봤습니다만,
함수 내에서 선언한 변수는 지역변수입니다. C++이든 자바든 동일합니다. 그 함수가 끝나는 순간 사라집니다. 그리고 같은 클래스 내에 있는 메소드를 호출하기 위해서 객체를 생성시킬 필요는 없습니다. 즉, SetCount를 쓰려면 그냥 setCount() 라고 하시면 되지 굳이 rManage를 생성해서 rManage.setCount()라고 하실 필요가 없고, 정 찜찜하시면 this.setCount() 라고 하시면 됩니다. 중요한건 rManage.setCount() 라고 하시면 카운트가 설정되는건 저 rManage 라는 객체의 카운트이고, 함수가 끝나는 순간 사라지기 때문에 아무 의미가 없다는 것입니다. this.setCount() 혹은 그냥 setCount()를 쓰셔야 현재 객체의 카운트가 설정됩니다.
08/09/11 11:39
저도 졍님 과 같은 생각입니다.
RecordManage 클래스 내부 함수에서 RecordManage생성자를 호출하는 문법은 아직까지 본 적이 없습니다. 전체적으로 프로그램 구성을 뜯어고칠 필요가 있다고 보여지네요.
|