Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 13 su 13
  1. #11
    Utente di HTML.it L'avatar di Gab-81
    Registrato dal
    Nov 2005
    Messaggi
    558
    Originariamente inviato da sonounostrinato
    si certo, l'unica cosa era che non avevate chiaro la differenza tra inizializzazione e construct

    Si, forse non mi sono spiegato bene in precedenza; usavo il termine inizializzazione volto in termini di risorse (costruire un oggetto significa assegnargli uno spazio di memoria ed allocarla per far si che possa sfruttare le strutture ad esso collegate) tutto qua...non intendevo inizializzazione legata strettamente allo stato dell'oggetto

    CMQ grazie per le puntuali precisazioni


  2. #12
    se non vi dispiace..voplevo aggiungere la mia.

    Io uso construct soprattutto nel caso di classi ereditate per evitare di dichiarare variabili già dichiarate. ad esempio:

    Codice PHP:
    class classeMadre {
      protected 
    $host;
      protected 
    $username;
      protected 
    $password;
      protected 
    $database;

      function 
    __construct() {
        
    $this->host "localhost";
        
    $this->username "pippo";
        
    $this->password "pluto";
        
    $this->database "paperino";
      }
    }

    class 
    classeFiglia extends classeMadre {
      function 
    __construct() {
        
    // chiama il metodo construct di classMadre
        
    parent::__construct();
      }

      public function 
    apriDatabase() {
        
    $mysqli = new mysqli($this->host$this->username$this->password$this->database);
        return 
    $mysqli;
      }
    }

    $class = new classeFiglia();

    $conn $class->apriDatabase(); 
    in questo modo quando dichiaro uan classe con EXTENDS posso utilizzare tutti i metodi e le funzioni della classe madre senza dover inizializzare una nuova classe.

  3. #13
    Ottimi spunti e idee di progetto.
    Mi ritrovo con ancora un piccolo dubbio: quando uso la sintassi NEW (cioè creo un nuovo oggetto da una classe) e questa classe non ha il metodo construct, a livello di memoria e di assegnazione non cambia nulla rispetto ad una classe che invece possiede il costruttore?


    EDIT: aggiungo una domanda per Emulman:
    se nella tua classe figlia non avessi specificato il costruttore, che cosa sarebbe successo al momento della creazione oggetto?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.