Witam
Mam w zasadzie takie niewielkie pytanie , ponieważ chce jak najkrócej napisać ten program wykorzystując super() , aczkolwiek nie jestem pewien czy jest to możliwe.
Jest tylko taka możliwość jak niżej czyli drukowanie w klasie głównej tytułu książki po uprzednim wywołaniu metody dziedziczonej z klasy nadrzędnej , każda pozycja w innej metodzie? Próbowałem umieścić 2 tytuły to w konstruktorze to w metodzie i niestety drukuje tylko jedną.
Czy radzicie bardziej pokombinować i skorzystać z tablicy Stringów . Co jest bardziej optymalne.
public class Ksiegozbior{
public String autor;
public String tytul;
public String rodzaj;
public String autor2;
public String ntautor;
public String nttit;
public String ntkd;
public Ksiegozbior(String au, String tyt, String rdz){
this.autor = au;
this.tytul = tyt;
this.rodzaj = rdz;
}
public void FantasyTitles(String na,String nt,String nk){
this.ntautor = na;
this.nttit = nt;
this.ntkd = nk;
}
}
public class Fantastyka extends Ksiegozbior{
public Fantastyka(){
super("Gwiezdne Wojny Imperium Kontratakuje","Steven Spielberg","Fantasy");
super.FantasyTitles("Lowca androidow","Steven Spielberg","Fantasy");
}
public void Fantasy(){
super.FantasyTitles("AE Sztuczna Inteligencja ","Steven Spielberg","Fantasy");
}
public void Fantasy2(){
super.FantasyTitles("I'm legend ","Steven Spielberg","Fantasy");
}
}
public class Ksiazka extends Ksiegozbior{
public static String autor2;
public Ksiazka(){
super("Adam Mickiewicz","Pan Tadeusz","Epopeja");
}
}
public class Biblioteka{
public static void main(String[] args){
Ksiazka ks = new Ksiazka();
System.out.print(ks.autor+" "+ks.tytul+" "+ks.rodzaj);
Fantastyka ft = new Fantastyka();
System.out.print("\n"+ft.ntautor+" "+ft.nttit+" "+ft.ntkd);
ft.Fantasy();
System.out.print("\n"+ft.ntautor+" "+ft.nttit+" "+ft.ntkd);
ft.Fantasy2();
System.out.print("\n"+ft.ntautor+" "+ft.nttit+" "+ft.ntkd);
}
}