Unity 3D Game Engine – Method Overloading

Metodo di sovraccarico.
Permette una funzione in grado di trattare definizioni multiple.
NOTA BENE: la natura dei dati passati alla funzione deve coincidere altrimenti verrà restituito un errore.

SomeClass


#pragma strict

public class SomeClass
{
    //The first Add method has a signature of
    //"Add(int, int)". This signature must be unique.
    function Add(num1 : int, num2 : int) : int
    {
        return num1 + num2;
    }
    
    //The second Add method has a sugnature of
    //"Add(string, string)". Again, this must be unique.
    function Add(str1 : String, str2 : String) : String
    {
        return str1 + str2;
    }
}

SomeOtherClass


#pragma strict

function Start () 
{
    var myClass = new SomeClass();
        
    //The specific Add method called will depend on
    //the arguments passed in.
    myClass.Add (1, 2);
    myClass.Add ("Hello ", "World");
}

Come funziona?

1. SomeOtherClass

– la variabile myClass richiama la classe pubblica SomeClass()
– SomeClass().Add richiama la funzione Add (o possiamo dire il metodo Add), spedendo o numeri o variabili

2. SomeClass

– viene richiamata la classe, poi il metodo numerico o stringa a seconda del tipo di variabile che arriva.