Benutzer-Werkzeuge

Webseiten-Werkzeuge


misc:oop_4

OOP Basics Teil 4

Public - Private

public

Public bedeutet, dass jeder auf diese Methode oder diesen Zustand zugreifen kann.

Generell sollten gute Programmierer sich danach richten keine Zustände als public zu deklarieren. Stattdessen sollte man auf „Set“- und „Get“-Methoden zurückgreifen.

private

Als private deklarierte Zustände und Methoden sind nicht zugänglich für aussenstehende. Nur die eigene Klasse kann auf diese Zustände und Methoden zugreifen. Somit wird sichergestellt, dass niemand von aussen Schreib- oder Leserechte hat.

Zurück zu der Klasse fernseher

Bis jetzt sind all unsere Zustände und Methoden „public“, d.h. jeder kann auf sie zugreifen, sowohl die Klasse, als auch der Benutzer. Die beiden Zustände aus unserer Klasse sollten jedoch von aussen geschützt sein. Deswegen sollten sie nun auch als private deklariert werden.

PhP

PhP ist eine Funktionsorierentierte Programmiersprache, dass sieht man schon daran, dass nur Standardfunktionen wie strlen() oder substr() zur Verfügung gestellt werden. Bei Java hingegen werden nur Standardklassen zur Verfügung gestellt wie z.B. die Klasse String oder Integer mit ihren jeweils eigenen Methoden.

OOP ist in PhP4 nur schwach implementiert. Erst ab PhP 5 kann man das erweiterte Potenzial von OOP ausschöpfen (wie public, private und mehr). Jedoch ist die Einfachheit von PhP wahrscheinlich der Hauptgrund warum auch PhP4 für einen Einstieg in OOP geeignet ist.

Alternative Programmiersprachen

Wer das gesamte Leistungspaket von OOP haben will, kann mit Java oder C++ weiter machen. Diese Sprachen sind etwas komplizierter, da Sie Typen unterscheiden, eine etwas andere Syntax besitzen und Compiler-Sprachen sind (d.h. Sie brauchen einen Java oder C++ Compiler).

PhP4 oder PhP5 ?

Für den Rest unseres Tutorials reicht PhP4. Jedoch folgt jetzt noch gleich ein PhP5 Quellcode unserer Klasse fernseher, damit Sie sehen können wie man private und public benutzt.

<?
//PhP 5 kompatibler Quelltext der Klasse fernseher
class fernseher
{
   private $eingeschaltet = "nein"; //private: kein Zugriff von Aussen
   private $aktuellesProgramm;      //private: kein Zugriff von Aussen
   public  $einfachso;              //public: Zugriff von Innen und Aussen.
 
   //auch Methoden koennen public oder private
   //sein
   public function einschalten()
   {
      $this->eingeschaltet = "ja";
   }
 
   public function ausschalten()
   {
     $this->eingeschaltet  = "nein";
   }
 
   public function is_eingeschaltet()
   {
      return $this->eingeschaltet;
   }
 
   public function programmWechseln($nr)
   {
     $this->aktuellesProgramm = $nr;
   }
   //Wenn eine Methode private ist, kann nur die Klasse selbst
   //diese aufrufen
   private function aktuellesProgramm()
   {
     return $this->aktuellesProgramm;
   }
}
?>

In den nächsten Kapiteln arbeiten wir wieder PhP 4 konform.

misc/oop_4.txt · Zuletzt geändert: 2011/12/31 01:08 von ben