I metodi (e le variabili) NON STATICI (cioè dichiarati senza il modificatore static) sono legati ad una istanza della classe in cui sono dichiarati. Vanno, cioè, invocato su una particolare istanza della classe.

I metodi (e le variabili) STATICI (cioè dichiarati con il modificatore static, come il main), al contrario, non sono legati alla singola istanza, ma direttamente alla classe (sono, cioè, comuni a tutte le istanze della classe e vivono anche senza alcuna istanza).

Chiaramente, al'interno di un contesto statico (ed il main lo è, appunto) non ci si può riferire ad un metodo (o ad una variabile) non static, poichè non ha alcun senso: ciascuna istanza della classe può eseguire il metodo in modi diversi a seconda del proprio stato interno, se lo richiamassi senza riferirmi ad una particolare istanza, non si saprebbe che cosa fare.

Di conseguenza, se vuoi poter richiamare quel metodo dall'interno del main (senza avere un'istanza della classe a cui fare riferimento) devi dichiararlo static.

Ciao.