Ciao,
ho iniziato a fare i primi passi con Java per un esame universitario...è un semplice programma che non fà ne input ne output formato da 2 classi: una che definisce il tipo di dati dei numeri interi, positivi e pari,più un metodo di istanza ed uno di classe e l'altra che contiene il main che istanzia 3 oggetti interipositivi pari e che usa i due metodi.

Dopo aver compilato le due classi provo ad eseguire da DOS la classe che contiene il main con il comando:
java TestInteroPositivoPari.class
mi dà il seguente messaggio di errore:

C:\Programmi\Crimson Editor\template\esercizi\InteroPositivoPari>java TestInteroPositivoPari.class
Exception in thread "main" java.lang.NoClassDefFoundError: TestInteroPositivoPari/class
Caused by: java.lang.ClassNotFoundException: TestInteroPositivoPari.class
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)

I codici delle due classi sono:

Classe TestInteroPositivoPari.java:
codice:
class TestInteroPositivoPari{
	
	/* Il metodo main è necessariamente un metodo di classe */
	public static void main(String[] args){
		int k;
		InteroPositivoPari N, M, P;
		
		N = new InteroPositivoPari(4);
		M = new InteroPositivoPari(6);
		P = N.somma(M);   // N è l'oggetto ricevente
		
		/* Nell'istruzione che segue la classe InteroPositivoPari è la classe ricevente */
		k = InteroPositivoPari.verificaSeInteroPositivoPari(3);
   }
}
Classe InteroPositivoPari.java
codice:
class InteroPositivoPari{
	int n;  // E' la variabile di istanza
	
	/* Il costruttore */
	
	InteroPositivoPari(int k){
		if(k >= 0 && k%2 == 0) n = k;
		else n = 1;
	}
	
	/* Il metodo di istanza che esegue la somma dell'oggeto ricevente con l'oggetto di tipo InteroPositivoPari referenziato
	   dal parametro altro */
	
    InteroPositivoPari somma(InteroPositivoPari altro){
    	int k;
    	InteroPositivoPari risultato;
    	
    	if(this.n != 1 && altro.n != 1) 
    		k = this.n + altro.n;
    	else k = 1;
    	
    	risultato = new InteroPositivoPari(k);
    	return risultato;
    }
    
    /* Il metodo di classe che verifica se il parametro h è un intero positivo pari o meno, restituisce 1 nel primo caso, 0
       altrimenti */
    
    public static int verificaSeInteroPositivoPari(int h){
    	int esito = 0;
    	if(h >= 0 && h%2 == 0) esito = 1;
    	return esito;
    }
}
Da che può dipendere?Come risolvo?

Grazie
Andrea