2015. 2. 10. 14:12 Programing/JAVA
배열과 객체생성 잊지 말아야 할 점!
class Books{
String title;
String author;
}
public class BooksTestDrive {
public static void main(String args[]){
Books [] myBooks = new Books[3];
//myBooks[0] = new Books();
//myBooks[1] = new Books();
//myBooks[2] = new Books();
int x = 0;
myBooks[0].title = "The Grapes of JAVA";
myBooks[1].title = "The JAVA of Gatsby";
myBooks[2].title = "The JAVA Cook Books";
myBooks[0].author = "bob";
myBooks[1].author = "sue";
myBooks[2].author = "ian";
while (x < 3){
System.out.println(myBooks[x].title);
System.out.println(" by ");
System.out.println(myBooks[x].author);
x = x + 1;
}
}
}
굵게 글씨쓴 부분이 존재하지 않으면(그니까 주석을 풀지 않는다면) 프로그램 오류가 뜬다.
이유인 즉슨,
Books [] myBooks = new Books[3]; 이 구문은 단순히 배열만 선언 했다는것!
지금은 Books 배열에 들어있는 원소는 Books 레퍼런스 변수에 불과하다는 점이다!
Books 객체는 따로 만들어 주어야 한다.
'Programing > JAVA' 카테고리의 다른 글
접근 한정자 예제(객체지향 예제) (0) | 2015.02.10 |
---|---|
인스턴스 복사 (0) | 2015.02.10 |
Setter와 Getter (0) | 2015.02.10 |
다형성 배열을 이용하여 객체를 생성! (0) | 2015.02.10 |
추상 클래스, 추상 메소드의 개념 (0) | 2015.02.10 |