Oop In Php5

  • Uploaded by: Triet
  • 0
  • 0
  • December 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Oop In Php5 as PDF for free.

More details

  • Words: 665
  • Pages: 13
Coded Culture

OOP in PHP5 Eine Klassenfahrt

Coded Culture

Na Klasse! ▶ Eine Klasse ist eine Blaupause für ein Objekt ▶ Eine Klasse besteht aus ▷ Klassenattribute(-variablen). Diese sind ohne Instanz aufrufbar. ▷ Instanzattributen(-variablen)(!= Klassenattribute). Können nur mit Instanz angesprochen werden ▷ Methoden (static und nicht static) ▷ Klassenkonstanten (!= define()). Beziehen sich nur auf eine Klasse (Klasse::methode(); self::methode()).

▶ Der Benutzer einer Klasse muss die internen Abläufe der Klasse nicht kennen. Er verwendet nur Schnittstellen. ▷ Daher ist die Sichtbarkeit wichtig. ◆ public: Von überall verwendbar ◆ private: Nur innerhalb einer Instanz der Klasse verwendbar ◆ protected: Nur innerhalb einer Instanz der Klasse oder davon abgeleiteten klassen verwendbar 13. Oktober 2006

OOP in PHP5

2

Coded Culture

Na Klasse! So sieht eine Klasse in UML Notation aus Klassenfahrt +bus:Bus #anzahlSchueler:int=0 -lehrer:Lehrer +addSchueler(schueler:Schueler)

13. Oktober 2006

OOP in PHP5

3

Coded Culture

Na Klasse! Und so sieht der Code zur Klasse aus

13. Oktober 2006

OOP in PHP5

4

Coded Culture

Was ist ein Objekt ▶ Alles ist ein Objekt. ▶ Ein Objekt besteht aus Attributen und Methoden

13. Oktober 2006

OOP in PHP5

5

Coded Culture

Und wie bekomme ich nun das Objekt? ▶ Aus einer Klasse ▶ Ein Objekt ist eine Instanz einer Klasse. ▶ Durch den Aufruf eines Konstruktors („new Klasse“) wird ein Objekt instanziert. ▶ Bei zerstören eines Objektes wird der Destruktor aufgerufen. ▶ Klassenelemente können ohne Instanzzierung benutzt werden ▷ Klassenkonstanten ▷ Statische (static) Methoden und Variablen

13. Oktober 2006

OOP in PHP5

6

Coded Culture

Wer mit wem und warum?

Speicher Block

$o

Block Block

$p

Block

13. Oktober 2006

OOP in PHP5

7

Coded Culture

Wer mit wem und warum?

Speicher Block

$o

Block Block

$p

Block

13. Oktober 2006

OOP in PHP5

8

Coded Culture

Was für´n Typ ▶ Mit Typisierung erzwingt man die korrekte Paramterübergabe. ▶ Typsicherheit. Man kann sich immer sicher sein, mit welchem Typ man es zu tun hat. ▷ Wichtig damit der Benutzter der Klasse weiß welche Typen die Parameter haben.

▶ Schlüssel zur Polymorphie ▶ Arbeitserleichterung ▷ public ▷ statt ▷ public

function setLehrer(Lehrer $lehrer){}

function setLehrer($lehrer){ if($lehrer instanceof Lehrer){ throw new Exception(´$lehrer muss vom Typ Lehrer sein´, 1); } }

13. Oktober 2006

OOP in PHP5

9

Coded Culture

Sündenfall! ▶ Wie behandle ich Fehler und Ausnahmen. ▶ Statt bei Fehlern das Programm abbrechen zu lassen kann man diese an den Aufrufenden weitergeben. ▶ Hilfsmittel, um Ausnahmen oder auftretende Fehler „anderer“ Klassen ohne Wissen des Inhalts dieser Klassen behandeln zu können. ▶ Der komplette „trace“ des Fehler wird angezeigt falls diese nicht vorher abgefangen wurde (try{}catch(){}). ▷ Hilfreich um den Fehler zu finden.

▶ Man kann eigene Exception erstellen in dem man von der Grundklasse „Exception“ ableitet. So kann der Benutzer genauer bestimmen welche Exception er behandeln will. 13. Oktober 2006

OOP in PHP5

10

Coded Culture

Sündenfall! Und so sieht der Code zur Klasse aus public function setLehrer($lehrer){ if($lehrer instanceof Lehrer){ throw new Exception(´$lehrer muss vom Typ Lehrer sein´, 1); } } $klassenfahrt = new Klassenfahrt(); $lehrer = new Schueler(); try { $klassenfahrt->setLehrer($lehrer); } catch (Exception $e){ throw $e; // Einfache Weitergabe echo $e->getMessage(); // Ausgabe der Fehlermeldung }

13. Oktober 2006

OOP in PHP5

11

Coded Culture

Was wurde nicht besprochen? ▶ ▶ ▶ ▶ ▶ ▶ ▶ ▶

13. Oktober 2006

Cloning Reflection PhpDoc Überladung (_set, _get) Final Magische methoden (__toString) Iteration (foreach) Autoloading OOP in PHP5

12

Coded Culture

Vielen Dank… …für die Aufmerksamkeit und das Interesse!

Für Fragen und Kritik

Reto M. Kiefer [email protected] Daniel Kopp [email protected] www.codedculture.com

13. Oktober 2006

OOP in PHP5

13

Related Documents

Oop In Php5
December 2019 22
Oop
November 2019 35
Oop In Java
November 2019 8
Oop In C++
May 2020 11
Oop Exercise
June 2020 16
Introduction Oop
November 2019 33

More Documents from ""

201 Hop Dong Lien Doanh
April 2020 17
2003-11-15-oop_mit_php_5
December 2019 19
Oop In Php5
December 2019 22
Mysql Triggers
November 2019 32
Password Protection
November 2019 16
Fulltext Search
November 2019 18