Ankündigung

Einklappen
Keine Ankündigung bisher.

Klassenproblem

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Zitat von shoryuken
    $this kannste nur innerhalb einer Klasse verwenden:
    Fast.
    $this kennzeichnet das eigene Objekt.

    Sowas simples sollte der OP eigentlich schon wissen, wenn er mit Klassen hantiert.

    Kommentar


    • #17
      ...es gibt doch verschiede Zugänge zu einem Thema. Der eine liest ein Buch und schaltet dann den Rechner ein, der andere kopiert sich ein Skript und spielt erstmal damit rum, ohne wirklich zu wissen, was er da tut. Ich kann mich erinnern, dass ich erst auch garnicht wusste, was es mit diesem $this auf sich hatte, auch wenn es mir heute irgendwie garnicht einleuchten mag, dass man sowas "simples" nicht auf Anhieb verstehen kann.

      Basti

      Kommentar


      • #18
        Zitat von bbastix
        ...es gibt doch verschiede Zugänge zu einem Thema. Der eine liest ein Buch und schaltet dann den Rechner ein, der andere kopiert sich ein Skript und spielt erstmal damit rum, ohne wirklich zu wissen, was er da tut.
        Das ist leider so, daß manche (ich guck jetzt keinen an) bisweilen eine recht naive Methode zum Erwerb von Wissen an den Tag legen.

        Ich allerdings bin viel zu faul, mich einem neuen Thema ohne Vorkenntnisse zu nähern.

        Dh. ich hatte mich damals erst einmal erkundigt, was Klassen und was OOP eigentlich ist. Hatte mir dann ein diesbezügliches Script angeguckt und mit hilfe des Handbuches zu analysieren versucht, was da gerade abläuft, um das Prinzip zu verstehen. Und das Prinzip ist wirklich mehr als simpel. Wohlgemerkt nur das Prinzip. Anwendungspraxis ist dann ein anderes Thema, bei dem man "viel Tinte schwitzen muß".

        Kommentar


        • #19
          >> [verschiede Zugänge]
          >
          > Das ist leider so, daß manche (ich guck jetzt keinen an) bisweilen eine
          > recht naive Methode zum Erwerb von Wissen an den Tag legen.

          Das seh ich anders. Ich denke, Menschen sind einfach unterschiedlich in dem, mit welchen Methoden sie sich wie effektiv Fähigkeiten aneigenen könen. Bedauernswert ist in meinen Augen allenfalls mangelde Investition oder Kreativität bei der Suche nach den für einen selbst gut geeigneten Methoden. Es spricht in meinen Augen nicht weniger dagegen, naiv und spielerisch, neugierig probierend an ein Thema ranzugehen, als gegen eine Annäherung über abstrakte Theoriegerüste. Letztlich ist beides nötig, denn ohne theoretisches Verständnis bleibt der Maurer eben ein Maurer und wird niemals ein Haus entwerfen können und ohne das sich im Tun Probieren bleibt das Haus des Architekten eben eine Graphitspur auf einem Stück Papier.

          An sich ist es ein sehr guter Zugang, erstmal etwas zu tun und sich dann hinterher die Theorie dazu anzueignen. Die Waldorfpädagogik baut z.B. darauf. Wichtig ist natürlich, dass die Grundlagen dafür da sind, zu dem zu Lernenden überhaupt erstmal einen Zugang zu bekommen und dass das Probieren und Erleben in einem sicheren Rahmen stattfindet.

          Ich denke, bei den einen kann der Geist einfach ein Stück weiter fliegen und die brauchen nicht erst über die staubige Straße latschen. Andere hingegen klinken sich schneller aus, wenn sie das gehörte, gelesene nicht mit ausreichend Erfahrung, eigenem Erleben ausfüllen können.

          ...ich glaube, wir kommen vom Thema ab, was? *g

          Basti

          Kommentar


          • #20
            @meikel
            Ich lerne schneller durch Beispiele als durch Theorie. Das hat nichts mit Dummheit zu tun. Ich schau mir einen einfachen Code an, analysiere Schritt für Schritt und gehe immer mehr ins Detail bis ich ihn selber entwerfen kann.
            Mich kotzt es total an, 10 Seiten Therorie zu lesen, die ab und zu Zeugs behandelt, dass man erst versteht, wenn man den Code sieht.
            Jeder lernt anders.

            Vielleicht erstellt $this automatisch eine statische Variable. Wäre zwar ungewöhnlich aber an sowas habe ich nciht gedacht. Bei Arrays kann ich auch schnell einen Index erfinden, den es dann einfach gibt. In den meisten Sprachen muss man das Array zuerst noch dimensionieren.

            Kommentar


            • #21
              Zitat von suter
              Vielleicht erstellt $this automatisch eine statische Variable.
              Diese Aussage ist ziemlich unsinnig.
              Es ist eine Sache, die Theorie nicht zu kennen, aber eine andere, die Bedeutung der Wörter, die man verwendet, nicht zu kennen.
              mod = master of disaster

              Kommentar


              • #22
                Zitat von suter
                Vielleicht erstellt $this automatisch eine statische Variable.
                Nein.

                Hättest Du endlich mal das http://www.php.net/manual/de/language.oop.php gelesen, hätte sich die Frage erledigt.

                Innerhalb einer Klassendefinition ist nicht bekannt, unter welchem Namen das Objekt in Ihrem Programm erreichbar sein wird: Als die Klasse Cart geschrieben wurde war nicht bekannt, dass das Objekt später $cart oder $another_cart genannt wird. Deshalb können Sie innerhalb der Klasse Cart selbst auch nicht $cart->items schreiben. Um nun die eigenen Funktionen und Variablen innerhalb einer Klasse anzusprechen, können Sie die Pseudo-Variable $this verwenden, welche Sie auch als 'meine eigene' oder 'aktuelles Objekt' verstehen können. Deshalb kann '$this->items[$artnr] += $num' auch als 'addiere $num zu $artnr in meinem eigenen Array items', oder 'addiere $num zu $artnr im Array items innerhalb des aktuellen Objektes' lesen.
                Das wars...

                Wenn ich Dir das restliche Handbuch auch noch vorlesen soll, dann such Dir 'nen Anderen.

                Kommentar

                Lädt...
                X