esiste un sistema per creare dei metodi dentro ad una classe a cui é possibile accedere direttamente senza dover ogni creare un oggetto della classe e poi applicare il metodo, ma direttamente richiamandolo semplicemente con il nome della classe
di queste classi non di creeranno oggetti ma verranno richiamati i metodi direttamente.
questo fa si che non ci saranno oggetti diversi in memoria con metodi con stesso nome indipendenti ma solo uno singolo
sintassi:
public static tipo_valore NOME(....) il metodo deve essere pubblico
{
....;
}
esempio: il metodo Quadrato é accessibile direttamente senza creare l'oggetto della classe Matematica
public class Matematica
{
public static int Quadrato(int N)
{
return N * N;
}
}
int q = Matematica.Quadrato(5); assegno il valore direttamente
la variabile q assumerà il valore 25 direttamente dalla calsse Matematica
invece con un metodo non static in una classi con costruttore:
public class Matematica
{
public int Quadrato(int N)
{
return N * N;
}
}
Matematica oggetto = new Matematica(25); creo oggetto
int q = oggetto.Quadrato; assegno il valore