Izpitno vprašanje RAČ2PRA 1300

Iz MaFiRaWiki

GFDL Avtor tega članka je študent/ka MiraRažman.

Pripravil/a ga je pri predmetu Računalništvo 2 (FMF PRA).


Kljub temu ste vsi vabljeni k urejanju in popravkom, saj je bistvo wikija ravno v sodelovalnem delu.


Vprašanje

Kaj je metoda toString()? Kdaj se uporabi? Navedi nekaj primerov uporabe!

Odgovor

Metoda toString() je ena od metod definiranih v javanskem razredu Object. Glavni namen metode je, da vrača niz, ki opisuje objekt nad katerim je metoda klicana. Ker vsak javanski razred neposredno ali posredno deduje iz razreda Object, je možno klicanje te metode nad vsakim objektom v Javi. Priporočljivo je, da v vsakem novo definiranem razredu prekrijemo metodo toString() podedovano iz razreda Object. Ta naj bi vračala čimbolj smiseln in zgoščen opis za določen objekt. Metoda toString() pretvori objekt v niz, ki ga uporabimo za predstavitev objekta. Definirana je kot public. Omogoča nam izpisljivo kopijo objekta, zato je zelo uporabna, ko objekta ne moremo predstaviti z običajno funkcijo izpis.

Na primer izpis

  1. System.out.println(new Zajec());
je nečitljiv. Če je znotraj razreda Zajec definirana funkcija toString(), lahko z njo izpišemo lastnosti objekta, za katere menimo, da objekt opišejo.

Primera funkcije toString():

  1. public String toString() {
  2. // zapis objekta Zajec z nizom
  3. String rezultat = "Zajec ";
  4. return rezultat + zapStZajca + ": " + tezaZajca;
  5. } // toString


  1. class Temperature {
  2. // razred Temperature
  3. private int celsius; // stopinje Celzija
  4.  
  5. public String toString ( ) {
  6. // izpis objekta Temperature z nizom (pripisemo se znak za stopinje)
  7. return Integer.toString (celsius) + " o C";
  8. } // toString
  9. } // class

Pri programiranju novih razredov prekrijemo metodo toString() in napišemo takšno, ki bo vračala čimbolj koristne podatke za konkretni razred.

  1.  
  2. public class Kompleksno {
  3. public double re;
  4. public double im;
  5. ...
  6. // Konstruktor(ji) in ostale metode
  7. ...
  8. // Prekrita metoda toString() vrne opis za objekt tipa Kompleksno
  9. public String toString() {
  10. return this.re + " + " + this.im + " * i";
  11. }

String toString() kompleksno število pretvori v niz. Če tako metodo dodamo razredu, lahko objekte razreda prištevamo nizom in le-ti se bodo pretvorili v nize.

Osebna orodja