PHP klassen

Resident_DeeJay

Erfahrenes Mitglied
Hi Folks

Diesmla beschäftige ich mich mit Klassen

Eine Klasse ist eine Sammlung von Variablen und Funktionen, die mit diesen Variablen arbeiten. Eine Klasse wird folgendermaßen definiert ...

soweit klar, jedoch wiue rufe ich eine klasse auf oder wie wird sie eingesetzt und vorallem wo wird sie eingesetzt ?

Habe gegoogelt und auch hier die Tutorials durchgestöbert, sowie meine Öffline Hilfe für PHP die ich von PHP.net habe Durchsucht, jedoch nicht für mich verständliches gefunden.


Wär vieleicht jemand so Lieb mir das verständlich RÜber zu bringen ?


Danke.

Gruß
 
Willst du das für 4 oder 5 wissen?

Naja, und dir grade mal in nem Thread zu erklären, wie OOP funktioniert...

Aber Basics sind das, vielleicht reicht dir das als Einstieg:

PHP:
class foo{      //Klasse
    function foo() {     // Konstruktor
    }

    function foo_around() {
    }

    ....

}

....

$my_foo = new foo();    //neues Objekt
$my_foo->foo_around();   // Methode
$my_foll->some_foovalue; /// Atribut
 
Hmm... schade :p

Was willst du denn wissen... da steht doch, wie man sich ne Klasse anlegt und wie man von der Klasse Instanzen erzeugt.

Hast du noch gar keinen Plan von OOP?
 
von Klassen habe ich garkeinen schimmer.
Funktionen mittlerwile schon.
Wie ich sei erstelle und aufrufe sowie verwendung.


Ich habe noch nichts gefunden das mir wirklich nahe liegen kann wie klassen funktionieren und wie sie verwendet werden.
wozu sie gut sind usw. usw. usw.

PS: was heißt OOP ?

Gruß
 
Hallo,
stell dir Klassen als eine Art Bauplan vor, für ein Objekt welches du gerne
modulieren bzw bauen würdest. Dieser Bauplan muss einerseits die Eigenschaften des
Objektes definieren (Klassenvariablen etc.) und andererseits Verhaltensweisen
des Objektes.

Ein mögliches Beislpiel wäre das du zum Beispiel ein Auto bauen willst, mit folgendem
Bauplan:

Definition:

PHP:
class Auto{
  $var ps;                 //Eigenschaften der Klassen.
  $var geschw;
  
  function fahre(){      //Verhaltensweise der Klasse
     if(ps ziemlich groß)
           Dann beschlehunige schnell
  }
}

Um dieses Auto zu fahren reicht es nat. nicht wenn du nur den Bauplan zur Verfügung
hast, sondern du musst es jetzt nach diesem nat. auch aufbauen. Das machst du
folgendermassen:

PHP:
$mycar = new Auto;

Danach legst du die ps Zahl deines Objectes mycar fest:

PHP:
$mycar->ps = 30;      //Schlechter Stil aber erstmal wurscht

Danach kannst du das auto fahren:

PHP:
$mycar->fahre();

Und natürlich kannst du mit deinem Bauplan nicht nur ein Objekt schaffen sondern
ganz ganz viele ;)

PHP:
$mycar2 = new Auto;
$mycar3 = new Auto;
usw, usf...

=> Also ist eine Klasse ein Bauplan, bzw eine Abstraktion mit der du Dinge
beschreiben kannst um damit später dann Objekte zu erschaffen und
ich bin mir sicher der liebe Herr Gott macht es auch so ähnlich ;)

Gruß

RedWing
 
Das ist doch glatt gelogen... :-) wenn es in diesem unser aller Internet nix über ObjektOrientierte Programmierung gibt werde ich sofort Gärtner.

Wikipedia z.B.

Wenn du noch garnix in die Richtung gemacht hast, würde ich mich erstmal mit den theoretischen Konzepten auseinander setzen, kauf die am Besten ein Buch.
 
Ich Danke euch ersteinmal das Ihr versucht mir zu Helfen das zu verstehen.
Finde ich echt Super und Lobenswert :)
Danke



RedWing´s Beispiel hat es mri zwar gut erklärt jedoch die Frage zum nutzwert bestärkt.
ich wüsste nicht wo ich soetwas benötigen sollte.
Das könnt ich doch alles in eine Funktion kloppen und entsprechend jedes mal aufrufen wenn ich es Brauche oder?

wo wendet man classen an ?
Vieleicht hilft mir diese Frage n noch etwas weiter.


Besten-Dank und Gruß
 
Primär dienen Klassen dazu neue Typen in P-Sprachen zu definieren.
Es gibt ja z.B. elemetare Datentypen wie int, char usw. Klassen bieten nun mehr
die Möglichkeit einen neuen Typen, wie zum Beispiel "Auto" zu definieren mit eben
den obigen Eigenschaften und Verhaltensweisen.
Desweiteren werden Klassen überall da angewendet, wo es gilt komplexe
Objekte zu modellieren. Somit bieten Klassen eine tolle Möglichkeit zur
Strukturierung eines Programmes und außerdem können sie komplexe Software
übersichtlicher gestalten, als wenn alles Prozedural programmiert werden würde.
Außerdem bieten dir Klassen die Möglichkeit Beziehungen zwischen
verschiedenen Objekten herzustellen, (indem sie wieder andre Klassen beinhalten
können) was mit rein prozeduraler Programmierweise
nicht möglich ist.

Wie schon gesagt wenn du alles in eine Funktion kloppen möchtest bitte sehr,
dann bleibt es allerdings auch beim Kloppen...
Mit einer Klasse lassen sich komplexe Dinge eben viel verständlicher und eleganter
Ausdrücken.

Der Mensch besitzt die Fähigkeit zum abstrakten Denken , wieso sollte er diesen
Sachverhalt nicht nutzen?

Gruß

RedWing
 
Zurück