Dobry den,

pridam se k predchozim odpovedim:

chcete-li kontrolovat parametry konstruktoru,
pak se nejspis muze stat, ze kontrolou neprojdou.
Pak by mozna lepsi nez vyhodit vyjimku mohlo byt
vratit null nebo nejaky NullObject, coz taky
umozni jen tovarni metoda, tedy:

class Autobus extends Bus {
   private Autobus(int a, int b) {
      super(a);
   }
   public static Bus Autobus(int a, int b) {
      if (checkParams(a,b)) {
         return new Autobus(a,b); 
 } else {
    return new NullBus();
    <nebo>
    return null;
 }
   }
}

Doporucuju tez knizku pana Blocha " Java efektivne - 57 rad softwaroveho
experta"

VN

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Goo GGooo
Sent: Sunday, November 20, 2005 12:55 PM
To: Java
Subject: Konstruktory

Ahoj vsichni,

uz jsem se pri svem seznamovani s Javou stacil dozvedet ze volani
konstruktoru nadrazene tridy (tedy "super(...)") musi byt v novem
konstruktoru hned jako prvni prikaz. Netusite nekdo  jaky to ma duvod?
Ted jsem chtel vytvorit konstruktor ktery by pred zavolanim sveho
super()  vykonal validaci parametru, ale tvrde jsem narazil takze
musim pouzit nehezky workaround. Vrta mi hlavou jake tohle omezeni
muze mit duvod...?

Dik

Goo


Odpovedet emailem