[Java] 1 naam voor mogelijk andere instantie

Pagina: 1
Acties:
  • 115 views sinds 30-01-2008

  • chielsen
  • Registratie: Oktober 2003
  • Laatst online: 22-05 23:41
Ik wil dit laten werken:

if(iets)
{
Object1 obj = new Object1();
}

else
{
Object2 obj = new Object2();
}

En dan hier verder werken met obj. Dit kan alleen niet, omdat hij na het gesloten haakje al nietmeer weet wat obj is.... Dat is toch vaag. Tis geen functie, gewoon een ifje.

Kan dit op een andere manier.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 12:51

gorgi_19

Kruimeltjes zijn weer op :9

Visual Basic .NET:
1
2
3
4
5
6
Dim obj as MyObject
If Iets Then
    obj = New MyObject(1)
Else
    obj = New MyObject(2)
End if

Oftewe, buiten haakjes halen. Sowieso is Object1 niet gelijk aan Object2, waardoor dit ook fouten kan opleveren. Je kan immers van een koe geen haas maken. :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 12:51

gorgi_19

Kruimeltjes zijn weer op :9

whoami had nog een aanvulling waar je nog wat aan zou kunnen hebben:
Ik heb nog een toevoeginkje op dat Java - topic dat je gesloten hebt ([rml][ Java] 1 naam voor mogelijk andere instantie[/rml]).

Misschien kan je de TS nog meedelen dat hij dat kan oplossen dmv een abstracte class / interface (een contract dus) waar zowel de class Object1 als Object2 aan voldoen:

code:
1
2
3
4
5
6
7
8
9
10
IObject obj; // Dit is de interface (mag ook abstr. class zijn) die de gemeenschappelijke interface voor Object1 en Object2 definieert

if( blaat )
{
  obj = new Object1();
}
else
{
  obj = new Object2();
}

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Dit topic is gesloten.