/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
java.awt.Toolkit
Fra : Lobais


Dato : 02-02-05 17:23

Hej, jeg har fundet metoden getImage, som jeg skal bruge til at tegne
nogle billeder. Den ligger i Applet og Toolkit. Da jeg ikke har en applet,
og allerede arver fra Frame, har jeg lidt svært ved at se hvordan jeg
får fat i Metoden. Toolkit er abstrakt, så jeg kan ikke lave et objekt.
jeg kan heller ikke lave en tom klasse, der arver fra Toolkit, og så lave
et objekt af den, da Toolkit har mindst 20 abstrakte metoder.

Hvordan er det meningen at man skal bruge den?

--
Lobais - http://thomas.ahle.dk/
Einstein - Science without religion is lame, religion without science is blind.


 
 
Lobais (02-02-2005)
Kommentar
Fra : Lobais


Dato : 02-02-05 17:28

Wed, 02 Feb 2005 16:22:52 +0000. skrev Lobais:

> Hej, jeg har fundet metoden getImage, som jeg skal bruge til at tegne
> nogle billeder. Den ligger i Applet og Toolkit. Da jeg ikke har en applet,
> og allerede arver fra Frame, har jeg lidt svært ved at se hvordan jeg
> får fat i Metoden. Toolkit er abstrakt, så jeg kan ikke lave et objekt.
> jeg kan heller ikke lave en tom klasse, der arver fra Toolkit, og så lave
> et objekt af den, da Toolkit har mindst 20 abstrakte metoder.
>
> Hvordan er det meningen at man skal bruge den?

Nå, jeg opdagede at man kunne skrive:
Toolkit toolkit = Toolkit.getDefaultToolkit();
Hvorfor man præcist kan det, men ikke kan lave et normalt objekt, er mig
dog stadig en gåde.


--
Lobais - http://thomas.ahle.dk/
Einstein - Science without religion is lame, religion without science is blind.


Søren Berg Glasius (02-02-2005)
Kommentar
Fra : Søren Berg Glasius


Dato : 02-02-05 22:33

>>
>>Hvordan er det meningen at man skal bruge den?
>
>
> Nå, jeg opdagede at man kunne skrive:
> Toolkit toolkit = Toolkit.getDefaultToolkit();
> Hvorfor man præcist kan det, men ikke kan lave et normalt objekt, er mig
> dog stadig en gåde.

Hejsa

Du skal ikke lade dig skræmme. Årsagen til at klassen Toolkit er
abstrakt, er fordi der findes implementationer af alle de abstrakte
metoder som er specifikke for f.eks. Windows platformen og Linux
platformen. Hvis du laver ovenstående getDefaultToolkit() og udskriver
toolkit.getClass().getName() kan du se, hvilken implementation du har
fat i. Ovenstående kaldes i øvrigt en Factory metode (så hut jeg visker).

Man kan også bruge ovenstående metode-konstruktor, hvis en klasse er en
singleton, som f.eks.

public class Singleton {
   private static Singleton instance;
   // man må ikke instantiere klassen direkte
   private Singleton() {}

   public Singleton getInstance() {
      if(instance == null) {
         instance = new Singleton();
      }
      return instance;
   }
}

MVH
Søren

Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409079
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste