Precedente :: Successivo |
Autore |
Messaggio |
freemind Supervisor sezione Programmazione
Registrato: 04/04/07 20:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 15 Lug 2011 16:19 Oggetto: Php,Oop,abstract e un po' di fantasia |
|
|
Ciao,
ho scoperto una cosa simpatica (sì, come no!)...
Secondo me e altra gente php ha un bug ma secondo il team di sviluppo è solo un comportamento inaspettato.
Dunque, in teoria uno dovrebbe poter senza problemi marcare come abstract un metodo di una classe abstract anche se questo in realtà è definito in una interfaccia implementata dalla suddetta classe.
E invece no! Se ci provate otterrete un bell'errore!
Ad esempio provate con:
Codice: |
interface IDBAdapter
{
public function openConnection();
}
abstract class DBAdapter implements IDBAdapter
{
abstract public function openConnection();
}
class DBAdapter_tipo extends DBAdapter
{
public function openConnection(){...}
}
|
Se ci buttate dentro due righe vedere che php si incazza e vi dirà:
php ha scritto: |
Fatal error: Can't inherit abstract function IDBAdapter::openConnection()
(previously declared abstract in DBAdapter) in
nome file on line xxx
|
Chiaramente non sono scemo, quello che intendevo fare è corretto.
Bau |
|
Top |
|
|
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|