PHP singleton, class direct benaderen

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

  • aex351
  • Registratie: Juni 2005
  • Laatst online: 19:01

aex351

I am the one

Topicstarter
Ik wil weten wat het verschil tussen een class die gebasseed is op de singleton patroon en een statische class, dus direct benaderen via :: . Ik weet precies wat beide inhouden maar kan gek genoeg de verschillen er niet uit halen behalve dat je bij de singleton eerst een object van de class moet maken.

< dit stukje webruimte is te huur >


  • th3
  • Registratie: Januari 2003
  • Laatst online: 12-07-2025

th3

Als ik het goed heb doe je bij singleton class::getInstance() die dus gebruik maakt van die statische methode.

  • TUX2K
  • Registratie: September 2001
  • Laatst online: 08-04 10:39
Een singleton heeft een constructor welke inwendige variable kan aan maken welke in de methode van de singleton kunnen worden gebruikt.
In een statische klasse is dit niet echt de bedoeling, lees een statische klassen kan geen inwendige variable hebben.
Zo kan je bv. een database access klasse het beste zien als singleton, de klasse heeft een interne varibale met de connectie naar de database welke door de methode van die klasse worden gebruikt.
Maar een klasse die een string hashed kan perfect een statische klasse zijn, hij behoeft verder niks meer toe mat die parameters die worden mee gegeven aan een methode.
Dus als de methode er mee klaar is behoeft hij ze niet nog vaste houden.

Hoop dat het een beetje duidelijk is :X

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 11-03 14:33

NMe

Quia Ego Sic Dico.

Kom op, je ziet het verschil tussen beide soorten classes toch ook wel als je de definities van beide classes naast elkaar legt? Op Wikipedia en Google is meer dan genoeg te vinden. Tel daarbij op dat ik simpelweg je eigen inzet mis in je topicstart; iets waar je al vaker op gewezen bent.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Dit topic is gesloten.