I thought I knew all about PHP until I found this website! "Pensavo di sapere tutto di PHP fino a quando ho trovato questo sito!"
Jen

Eredità

L'ereditarietà consente funzionalità comuni a essere ereditato dalle classi sub. Questo aiuta a ridurre la duplicazione del codice.

Base classe Base
{
IsLoggedIn ( ) Funzione IsLoggedIn protetto ()
{
/ *
*
* /
}
}

Article extends Base Articolo classe estende Base
{
hideContent = false ; private $ hideContent = false;

ShowContent ( ) ShowContent funzione pubblica ()
{
$ this - > hideContent & & ! $ this - > IsLoggedIn ( ) ) if ($ this -> hideContent && $ this -> IsLoggedIn ())
{
false ; return false;
}
true ; return true;
}
}

Come potete vedere è la parola chiave extends è necessario per una classe di ereditare da una classe base. Una classe che estende un altro ottiene l'accesso a tutti i protette variabili e pubblico e le funzioni.

Sottoposto a override

È possibile sovrascrivere membri ereditati e metodi, da questo significa che una funzione in una classe super può essere sostituita dalla classe ereditando.

Article extends Base Articolo classe estende Base
{
hideContent = false ; private $ hideContent = false;

IsLoggedIn ( ) Funzione IsLoggedIn protetto ()
{
true ; return true;
}

ShowContent ( ) ShowContent funzione pubblica ()
{
$ this - > hideContent & & ! $ this - > IsLoggedIn ( ) ) if ($ this -> hideContent && $ this -> IsLoggedIn ())
{
false ; return false;
}
true ; return true;
}
}

Un esempio di questo è mostrato sopra in cui l'articolo sostituisce la funzione IsLoggedIn, in modo che sempre restituito true.

Classe di astrazione

Questo tipo di classe è utilizzata in particolare per le finalità di successione contrassegnata come una classe astratta non può essere istanziata. Inoltre, i metodi possono essere contrassegnati come abstract che costringe le classi che ereditano per la loro attuazione a un pari o una maggiore visibilità.

Base classe base astratta
{
IsLoggedIn ( ) Funzione IsLoggedIn protetto ()
{
/ *
*
* /
}

IsHTTPSPage ( ) ; abstract IsHTTPSPage funzione protetta ();
}

Article extends Base Articolo classe estende Base
{
hideContent = false ; private $ hideContent = false;

ShowContent ( ) ShowContent funzione pubblica ()
{
$ this - > hideContent & & ! $ this - > IsLoggedIn ( ) ) if ($ this -> hideContent && $ this -> IsLoggedIn ())
{
false ; return false;
}
true ; return true;
}

IsHTTPSPage ( ) Funzione IsHTTPSPage protetto ()
{
false ; return false;
}
}

Come indicato sopra la IsHTTPSPage () la funzione doveva essere attuata da un errore di base altrimenti sarebbe stato buttato.


Nessun commento è stato fornito.
security image
Scritto da Dominic Skinner
Ultimo aggiornamento: 2011/10/25 16:00:38