Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Scambio oggetti array

  1. #1

    Scambio oggetti array

    Ho una classe X.
    Al suo interno c'è un array di oggetti di classe Y.
    La classe X possiede il metodo scambia() che scambia le posizioni di due elementi dell'array.
    Posso creare un metodo della classe Y che richiama al suo interno il metodo scambia() della classe X?

  2. #2
    Moderatore di Off Topic, Kickstarter e XML L'avatar di Sky
    Registrato dal
    Jul 2000
    residenza
    Roma
    Messaggi
    1,053
    Sì, a patto che il metodo scambia della classe X sia statico e pubblico.
    Anche l'array contenuto nella classe X dovrà essere statico (se dovrai agire su di esso, altrimenti non serve).

    Per chiamare il metodo dovrai usare l'operatore scope resolution :: posto dopo il nome della classe X.

    Codice PHP:
    X::scambia(); 
    Lo Stato deve dare ai cittadini, come diritto, ciò che la mafia dà come favore.
    Carlo Alberto dalla Chiesa

    Facebook | Twitter | Last.fm | LinkedIn | Quora

  3. #3
    come funziona questo operatore?

  4. #4
    Moderatore di Off Topic, Kickstarter e XML L'avatar di Sky
    Registrato dal
    Jul 2000
    residenza
    Roma
    Messaggi
    1,053
    E' simile all'operatore di dereferenziamento -> ma serve a risolvere le chiamate a metodi o proprietà statiche.

    Codice PHP:

    class {

      public 
    metodo() {
         echo 
    'A';
      }

    }

    class 
    {

      public static 
    metodo() {
        echo 
    'B';
      }

    }

    $a = new A;
    $a->metodo();  // ok, mostrerà A

    B::metodo();  // ok, mostrerà B. Nota che non serve istanziare la classe in quando il metodo è statico 
    Lo Stato deve dare ai cittadini, come diritto, ciò che la mafia dà come favore.
    Carlo Alberto dalla Chiesa

    Facebook | Twitter | Last.fm | LinkedIn | Quora

  5. #5
    Non credo di aver capito quanto hai scritto nel tuo primo post allora.
    Nello specifico ho una classe Persona, e due classi (Adulto e Bambino) che estendono Persona.
    Vorrei creare un metodo della classe Adulto e della classe Bambino che permetta di scambiare di posto l'oggetto a cui lo applico con l'oggetto passato come parametro.
    Esempio:
    Codice PHP:
    ...
    bimbo.scambia(Persona p);
    ... 

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.