Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Costruttore

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2022
    Messaggi
    17

    Costruttore

    Buongiorno a tutti, sto facendo un esercizio ma ho dei dubbi su cosa io debba fare...
    il testo è il seguente:
    Ho una classe data con delle variabili d'istanza private. Devo creare un costruttore che inizializza l'oggetto con il giorno, il mese e l'anno presi come parametri che di default inizializza l'oggetto al primo gennaio del 2000.
    Cioè devo dichiarare direttamente io all'interno del costruttore che il giorno è uguale a 1, il mese a gennaio e l'anno al 2000?

    Codice PHP:
     class Data{           
    private 
    $giorno;           
    private 
    $mese;           
    private 
    $anno;                      
        public function 
    __construct(Data $g,$m,$a) {    
        
    $this->giorno=$g;   
        
    $this->mese=$m;  
        
    $this->anno=$a;    
        }       

    Ultima modifica di Maggi; 04-01-2023 a 14:21

  2. #2
    Codice PHP:
    class Data
    {
        private 
    $giorno;
        private 
    $mese;
        private 
    $anno;
     
        public function 
    __construct($g 1$m 1$a 2000)
        {
            
    $this->giorno $g;
            
    $this->mese $m;
            
    $this->anno $a;
        }


  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2022
    Messaggi
    17
    ok grazie
    Metodo di istanza equals che restituisce true se e solo se la data dell'oggetto di invocazione è uguale a quella dell'oggetto passato come parametro.
    Potete spiegarmi cosa vuol dire la parte in grassetto?

  4. #4
    Devi creare un metodo chiamato "equals()" a cui passi un oggetto Data e che restituisce true se le due date sono uguali e false se non lo sono.

    Per farlo, l'oggetto Data deve esporre in qualche modo le proprietà che hai definito come private.

    Ad esempio con metodi accesso (es. getGiorno(), etc.) o tramite il metodo __get()

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2022
    Messaggi
    17
    Codice PHP:
     class Data{          
     private 
    $giorno;           
    private 
    $mese;           
    private 
    $anno;                      
    public function 
    __construct(Data $g=1,$m=1,$a=2000) {            
    $this->giorno=$g;            
    $this->mese=$m;            
    $this->anno=$a;            
    }           
    public function 
    setGiorno(Data $gi) {            
    $this->giorno $gi;            
    }           
    public function 
    setMese(Data $me) {            
    $this->mese=$me;           
    }           
    public function 
    setAnno(Data $an) {            
    $this->anno=$an;            
    }           
    public function 
    getGiornoSenzaParametro() {                
    return 
    $this->setGiorno($gi);            
    }           
    public function 
    getMeseSenzaParametro() {            
    return 
    $this->setMese($me);            
    }          
     public function 
    getAnnoSenzaParametro() {            
    return 
    $this->setAnno($an);           
     }           
     public function 
    equals(Data $e){                
    if(
    $e==$this->getGiornoSenzaParametro()){ //$e è una data intera mettendo solo il giorno sicuramente                                                                         non va bene dovrei aggiungere anche mese e anno ma se                                                                        metto la && non ho lo stesso formato.                   
    return true;                 
    } else {                    
    return 
    false;               
     }            

    Ultima modifica di Maggi; 04-01-2023 a 16:35

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 © 2025 vBulletin Solutions, Inc. All rights reserved.