Forum » Programiranje » Java razredi, konstruktorji. Pomoč
Java razredi, konstruktorji. Pomoč
uro1001 ::
Pozdravljeni
Rešujem neko nalogo z razredi in konstruktorji in sem prišel do naslednje težave. Namreč nevem kako izdelati metodo da bo izpisala avtorje. Trenutno izpisujem tabelo, vendar mi izpiše naslov pomnilnika. Konstruktor v razredu Author mora biti prazen, sedaj pa nevem kako izpisati podatke o avtorju.
Rešujem neko nalogo z razredi in konstruktorji in sem prišel do naslednje težave. Namreč nevem kako izdelati metodo da bo izpisala avtorje. Trenutno izpisujem tabelo, vendar mi izpiše naslov pomnilnika. Konstruktor v razredu Author mora biti prazen, sedaj pa nevem kako izpisati podatke o avtorju.
amacar ::
Metoda ti more vrniti avtorje, torej vrneš
V classu Author narediš neko metodo (recimo overridaš toString()), ki ti vrne name + email + gender.
Izpišeš jih pa tako da v loopu kličeš to metodo nad posameznim primerkom avtorja.
return authors;
V classu Author narediš neko metodo (recimo overridaš toString()), ki ti vrne name + email + gender.
Izpišeš jih pa tako da v loopu kličeš to metodo nad posameznim primerkom avtorja.
authors[i].toString();
uro1001 ::
metodo sem že naredil ki mi vrne tabelo authors, in nato v zanki to tabelo izpisujem. Torej moram narediti le še metodo toString za izpis podatkov, da nebo izpisovalo pomnilniškega naslova. Sem pa pozabil dodati, da imam 3 razrede, eden je testni drug razred so avtorji in eden so knjige. Po sodeči sliki, bi morala biti metoda toString() v razredu Book.
Zgodovina sprememb…
- spremenil: uro1001 ()
uro1001 ::
Sem pa pozabil dodati, da imam 3 razrede, eden je testni drug razred so avtorji in eden so knjige. Tako imam v razredu metodo toString in v to metodo moram vrniti spremenljivke iz razredaAuthor in nato izpisat.
amacar ::
toString v Book bo verjetno izpisal vse podatke o knjigi, naslov, ceno, avtorje, količino itd...
toString v Author pa le podatke o enem avtorju, ime, email, spol
toString v Author pa le podatke o enem avtorju, ime, email, spol
amacar ::
Verjetno ker imaš polje authors veliko 5 elementov. Izpisati jih moreš le toliko kot jih je resnično v polju, torej do numAuthors
uro1001 ::
Sedaj napaka ni več, vendar mi vrne null.
Sedaj sem v konstruktorju dodal vrednosti in deluje, čerpav nevem če je pravilno, glede na graf na sliki.
Sedaj sem v konstruktorju dodal vrednosti in deluje, čerpav nevem če je pravilno, glede na graf na sliki.
Zgodovina sprememb…
- spremenil: uro1001 ()
amacar ::
Sodeč po sliki avtor res nima nobene metode, potem pač pač dostopaš direkt do spremenljivk, pa izpisuješ
authors[i].name + authors[i].gender...
<b>klima</b> ::
public class Author { private String name; private String email; private char gender; @Override public String toString() { return "Name: " + emptyIfNull(name) + "Email: " + emptyIfNull(email) + "Gender: " + Character.toString(gender); } private String emptyIfNull(String str) { return str == null ? "" : str; } }
public class Book { private Author[] authors = new Author[5]; private int numAuthors = 0; public void addAuthor(Author author) { authors[numAuthors] = author; numAuthors++; } @Override public String toString() { String str = ""; for(int i=0; i<numAuthors; i++) { str += authors[i].toString() + " "; } return str; } }
Je bilo takole mišljeno? Upam da skompajla, sem namreč direkt iz beležnice skopiral :)
uro1001 ::
Razred Author mora biti prazen, brez metod. Potem pa so v razredu Book metode addAuthor, printAuthor in getAuthor.
uro1001 ::
Tvoja koda dela sem probal. Vendar mi vrne null, brez podatkov, ker nimam konstruktorja v razredu Author.
AnriK ::
Potem kako pa zgleda tvoj glavni program? Če imaš same default konstruktor za avtorja potem more zgledat nekako takole:
V debato da tu kršimo precej principov objektnega programiranja se ne bom spuščal.
... Book b = new Book("Knjiga", 10.0); Author a = new Author(); a.name = "Ime"; a.email = "a@g.c"; a.gender = 'm'; b.addAuthor(a); ...
V debato da tu kršimo precej principov objektnega programiranja se ne bom spuščal.
Zgodovina sprememb…
- spremenil: AnriK ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | problemi z javoOddelek: Programiranje | 1122 (727) | MrStein |
» | [Android] Nov tip shranjevanja slikeOddelek: Programiranje | 2188 (1312) | urosz |
» | [Java] Objekt poslan k metodi v kakšnem stanju?Oddelek: Programiranje | 1554 (1001) | shadeX |
» | Java ObjektiOddelek: Programiranje | 2252 (1946) | Mavrik |
» | Java - sortiranje 2D tabeleOddelek: Programiranje | 1717 (1666) | SkIDiver |