Der Martin: Instanz um Methoden errweitern

Beitrag lesen

Hallo,

trait Foo {
   public int attribut = 42; // <-- Das ist ein Attribut

   public methode () : void {} // <-- Das ist eine Methode
} // Das Trait ist eine Sammlung von Methoden und Attributen

an dieser Stelle muss ich mal ketzerisch (oder naiv?) fragen, warum man in der OOP Funktionen einer Klasse nicht mehr Funktionen nennt, sondern Methoden. Das ist mir schon vor vielen Jahren aufgefallen und irgendwie gegen den Strich gegangen, aber eine einleuchtende Erklätung konnte mir noch niemand anbieten.

In C++ beispielsweise ist eine Methode auch nur eine Funktion, nur dass sie indirekt über die Methodentabelle der Klasse aufgerufen wird und als erstes implizites Argument einen Zeiger auf die Instanz (in C++: self) übergeben bekommt.
Also warum ein eigener Fachbegriff?

Ciao,
 Martin

--
Ich stamme aus Ironien, einem Land am sarkastischen Ozean.
0 53

Instanz um Methoden errweitern

pl
  • php
  1. 0
    Tabellenkalk
    1. 0
      pl
  2. 1
    1unitedpower
    1. 0
      pl
      1. 0
        1unitedpower
        1. 0
          Rolf B
          1. 0
            1unitedpower
            1. 0
              Rolf B
              1. 0
                pl
        2. 0
          pl
          1. 0
            1unitedpower
            1. 0
              Matthias Apsel
            2. 0
              pl
              1. 0
                1unitedpower
                1. 0
                  pl
                  1. 2
                    1unitedpower
              2. 0
                pl
                1. 0
                  1unitedpower
            3. 0
              Der Martin
              1. 1
                Christian Kruse
                1. 0
                  pl
                  1. 0
                    Christian Kruse
                2. 0
                  Rolf B
                  1. 0
                    Christian Kruse
                    1. 0
                      Rolf B
                      1. 0
                        Christian Kruse
                        1. 0
                          1unitedpower
                      2. 0
                        1unitedpower
                        1. 0
                          Christian Kruse
                          1. 0
                            1unitedpower
                            1. 0
                              Christian Kruse
                              • elixir
                  2. 0
                    pl
                    1. 0
                      Christian Kruse
                    2. 0
                      pl
                      1. 0
                        Matthias Apsel
              2. 0
                pl
              3. 0
                1unitedpower
              4. 0
                pl
                1. 1
                  Rolf B
                  1. 0
                    pl
                  2. 0
                    pl
  3. 0
    Rolf B
    1. 0
      pl
      1. 2
        Rolf B
        1. -2
          pl
          1. 0
            Christian Kruse
          2. 0
            pl
            • perl
            • php
  4. 0
    pl
    1. 0
      Rolf B
      1. 0
        pl
        1. 0
          Mitleser
      2. 0
        pl