Kontynuując...
Mam klasę główną:
public class MainTest {
public static void main(String[] args) {
Film film1 = new Film("Wolf", "W");
Film film2 = new Film("As good as it gets","AS");
Film film3 = new Film("One flew over the Cuckoo's Nest","1F");
Film film4 = new Film("The America", "TA");
Film film5 = new Film("Ghost Rider: Spirit of the Vengance","GR");
Film film6 = new Film("Barah Aanan","BA");
Actor Actor1 = new Actor("Jack Nicolson", "Miami", 74);
Actor Actor2 = new Actor("Violante Placido", "Bologna", 38);
Actor1.getMyFilm()[0]=film1;
Actor1.getMyFilm()[1]=film2;
Actor1.getMyFilm()[2]=film3;
Actor2.getMyFilm()[0]=film4;
Actor2.getMyFilm()[1]=film5;
Actor2.getMyFilm()[2]=film6;
System.out.println(Actor1);
System.out.println(Actor2);
}
}
...klasę Actor:
public class Actor {
private String name;
private String address;
private int age;
private Film[] myFilm;
public Actor(String name, String address, int age) {
this.name=name;
this.address=address;
this.age=age;
this.myFilm=new Film[3];
}
public Actor() {
}
public void setName(String name){
this.name=name;
}
public void setAddress(String address) {
this.address=address;
}
public void setAge(int age) {
this.age=age;
}
public void setMyFilm(Film[] myFilm) {
this.myFilm = myFilm;
}
public String getName(){
return name;
}
public String getAddress() {
return address;
}
public int getAge() {
return age;
}
public Film[] getMyFilm() {
return myFilm;
}
public String toString() {
return "Actor {" + name +", "+ address+", " + age+")"+ "\n" + myFilm;
}
}
...oraz klasę Film
String name;
String code;
public Film(String name, String code) {
this.name=name;
this.code=code;
}
public void setName(String name) {
this.name=name;
}
public void setCode(String code) {
this.code=code;
}
public String getName(String name) {
return name;
}
public String getCode(String code) {
return code;
}
public String toString() {
return (this.name + "\t" + this.code);
}
public void print() {
System.out.println(name);
System.out.println(code);
}
}
przywołanie System.out.println(Actor1);
powoduje wydruk danych obiektu, niestety nie drukuje informacji o obiektach klasy Film znajdujących się w tabeli myFilm - zamiast tego drukuje lokacje tej tabeli w buforze...Nie potrafię utworzyć metody toString w klasie Actor, drukujacej (również) danych z tabeli Film[] myFilm, czyli nazwy danego filmu i jego kodu (np. "Wolf" "W")
W efekcie chce uzyskać:
Actor {Jack Nicolson, Miami, 74)
Wolf W
As good as it gets AS
One flew over the Cuckoo's Nest 1F
Z góry dziękuję raz jeszcze.