• Keine Ergebnisse gefunden

Getter und Setter | informatikZentrale

N/A
N/A
Protected

Academic year: 2022

Aktie "Getter und Setter | informatikZentrale"

Copied!
9
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

PHP:    

Geheimnisprinzip,  Kapselung;  

Ge6er  und  Se6er  

(2)

Geheimnisprinzip  

Nur  einige  Methoden  und  A6ribute  einer  Klasse   sind  öffentlich  zugänglich,  die  anderen  bleiben   geheim.  

=  weniger  (unbefugte,  ungewollte  oder  

inkompetente)  Eingriffsmöglichkeiten  von  

außen  (durch  Mitprogrammierer,  Böswillige  ...)  

(3)

Geheimnisprinzip;  

Kapselung  

Beispiel  Kundenkonto:  

Öffentliche Methoden der Klasse:

- Kontostand abfragen - Geld abheben

("von außen", bspw. am EC-Automat)

"Geheime" Methoden/Attribute der Klasse:

- Berechnung der Soll-/Habenzinsen - Ermittlung der Kontoführungsgebühren - Berechnung aktueller Kontostand

darf "nur" Kontostand

abfragen + Geld abheben

(4)

Kapselung  

Methoden/A6ribute,  die  nur  über  

Zugriffsmethoden  benutzt  oder  verändert   werden  können,  sind  gekapselt.    

$bankkonto->kontostand kann nur über Getter-/

Setter-Methode abgefragt oder verändert werden.

(5)

"Se6er"  

Methode,  die  die  Veränderung  einer   Objektvariablen  ermöglicht.  

Objekt  

"bankkunde_schmi6"  

Verändern der Kundenadresse über "Setter"-Methode

(aber keine Möglichkeit, Kontostand zu verändern, so lange keine

entsprechende Setter-Methode vorhanden ist)

(6)

"Se6er"  

public class Kunde {

// Attribute

public $kontostand, // ...

// Methoden

public function setKontostand($neuerKontostand){

$this->kontostand = $neuerKontostand;

}

// ...

}

(7)

"Ge6er"  

Methode,  die  eine  Objektvariable  abruV.  

Objekt  

"bankkunde_schmi6"  

Abrufen z.B. des Kontostandes mit Getter-Methode von außen

(aber keine Möglichkeit, Kontostand von außen zu verändern, so lange keine

entsprechende Setter-Methode vorhanden ist)

(8)

"Ge6er"  

public class Kunde {

// Attribute

public $kontostand = 130, // ...

// Methoden

public function getKontostand(){

return $this->kontostand;

} }

(9)

"Ge6er"  

public class Kunde {

// Attribute

public $kontostand = 130, // ...

// Methoden

public function getKontostand(){

return $this->kontostand;

} }

$kunde_schmitt = new Kunde;

$schmitts_kohle = $kunde_schmitt->getKontostand();

echo "Herr Schmitt hat " . $schmitts_kohle . ".<br />\n";

Referenzen

ÄHNLICHE DOKUMENTE

Object Oriented JavaScript Prototypical Inheritance Extending Backbone Classes Applying parent Methods. Accessing Server Data with Models Getter and

Object Oriented JavaScript Prototypical Inheritance Extending Backbone Classes Applying parent Methods. Accessing Server Data with Models Getter and

Object Oriented JavaScript Prototypical Inheritance Extending Backbone Classes Applying parent Methods. Accessing Server Data with Models Getter and

Object Oriented JavaScript Prototypical Inheritance Extending Backbone Classes Applying parent Methods. Accessing Server Data with Models Getter and

Object Oriented JavaScript Prototypical Inheritance Extending Backbone Classes Applying parent Methods. Accessing Server Data with Models Getter and

Object Oriented JavaScript Prototypical Inheritance Extending Backbone Classes Applying parent Methods. Accessing Server Data with Models Getter and

Object Oriented JavaScript Prototypical Inheritance Extending Backbone Classes Applying parent Methods. Accessing Server Data with Models Getter and

Object Oriented JavaScript Prototypical Inheritance Extending Backbone Classes Applying parent Methods. Accessing Server Data with Models Getter and