Programa nao quer rodar

Fala ae galera, estou aprendendo java e fiz um programinha aki pra testar o conteúdo lido no meu livro… ele compila direitim mas nao roda… na hora de rodar a classe ele da o seguinte erro:

D:\java>java calcteste
Exception in thread “main” java.lang.NoClassDefFoundError: calcteste
Caused by: java.lang.ClassNotFoundException: calcteste
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)

segue o codigo

[code]
class calc{

int result;
public int getSoma(){	
	return result;
}
public int getSubtracao(){
		return result;
}
public void setSoma(int x, int y){
	result = x + y;
}

public void setSubtracao(int x, int y){
	result = x - y;
}

}

class clacteste{
public static void main(){
calc c = new calc();
c.setSoma(10, 8);
c.setSubtracao(15, 4);
System.out.println("A soma e: " + c.getSoma());
System.out.println("A subtracao e: " + c.getSubtracao());
}

}[/code]

Só uma dúvida quanto a sua postagem… Essas duas classes estão em dois arquivos diferentes né ?

nao… sao no msm arquivo

pq? tem alguma restrição qto a isso?

Cria um novo arquivo “CalcTeste”

class CalcTeste {
	public static void main(String arg[]) {
		calc c = new calc();
		c.setSoma(10, 8);
		c.setSubtracao(15, 4);
		System.out.println("A soma e: " + c.getSoma());
		System.out.println("A subtracao e: " + c.getSubtracao());
	}

}

OU no mesmo arquivo

class calc {

	int result;

	public calc() {

	}

	public int getSoma() {
		return result;
	}

	public int getSubtracao() {
		return result;
	}

	public void setSoma(int x, int y) {
		result = x + y;
	}

	public void setSubtracao(int x, int y) {
		result = x - y;
	}

	public static void main(String arg[]) {
		calc c = new calc();
		c.setSoma(10, 8);
		c.setSubtracao(15, 4);
		System.out.println("A soma e: " + c.getSoma());
		System.out.println("A subtracao e: " + c.getSubtracao());
	}
}

Baixe essa apostila vai ajudar muito:

Para cada classe, você precisa de um arquivo .class
Ou seja, se você quer fazer este programa funcionar com duas classes, você precisa de dois arquivos, e cada classe no arquivo certo.
Cada arquivo terá o nome da classe que você criar.

Por Exemplo:

A classe calc terá um arquivo calc.class

Exatamente como o ToBack mostrou…

Se da uma pesquisa sobre como executar com linha de comando pois vc deve informar cada classe ok, senão usa o eclipse ou o netbens hehehe.

abraçoss

mas na compilação foi gerado dois arquivos calc.class e calcteste.class

Se ainda ficou em dúvida e tiver pressa coloca as duas classes em um package que pode ter ctz que vai funcionar.

Ahhh se vc colocou o código igualzinho vc verá que não criou uma classe calcteste e sim clacteste no mesmo arquivo.Veja se é isso ou coloque td em um package mesmo.

Outra coisinha o método main está errado:

public static void main(String[] args) é assim.

De uma olhada em padrões java tb, pois nome de classe a primeira letra deve ser maiúscula métodos e atributos a primeira minúscula e a segunda palavra junta maiúscula, etc.

package br.com.soma;

public class Calcular {

  int result;   
    public int getSoma(){     
        return result;   
    }   
    public int getSubtracao(){   
            return result;   
    }   
    public void setSoma(int x, int y){   
        result = x + y;   
    }   
       
    public void setSubtracao(int x, int y){   
        result = x - y;   
    } 

}

class CalcularTeste{
public static void main(String[] args) {

	   Calcular c = new Calcular();   
        c.setSoma(10, 8);   
        c.setSubtracao(15, 4);   
        System.out.println("A soma e: " + c.getSoma());   
        System.out.println("A subtracao e: " + c.getSubtracao());   
    }   

}