Instanciando classes

2 respostas
A

Criei um projeto simples, mas não estou conseguindo compilar. Criei uma classe Ponto e outra Circulo (que instancia a classe Ponto). Mas ao compilar a classe Circulo, dá um erro que não encontrou a classe Ponto, mas a classe Ponto já foi compilada sem erros e estão na mesma pasta.
Será que é algum problema do compilador? JDK 1.5.0
Veja codigo fonte:

//Ponto.java
package Geometria;

public class Ponto {

float x,y; //nenhu especificador, default=package

public Ponto(float ax,float ay) //omita o valor de retorno!

//garante o estado do objeto

{

this.x=ax; this.y=ay;

}
public float retornaX()

{

return x;

}
public void move(float dx,float dy)

{

this.x+=dx; this.y+=dy;

}
public void mostra()

{

System.out.println("("+this.x+","+this.y+")");

}

}

// Circulo.java
package Geometria;

public class Circulo {
float raio,x,y; //nenhum especificador, defaul=package

public Circulo(float ax,float ay,float ar)

//garante o estado do objeto

{

this.x=ax; this.y=ay; this.raio=ar;

}
public void altera_raio(float a)

{

this.raio=a;

}
public float retorna_raio()

{

return this.raio;

}
public void move(float dx,float dy)

{

this.x+=dx; this.y+=dy;

}
public float distancia(Ponto ap)

{

float dcp; //distancia do centro do circulo ao ponto

dcp=(float)Math.sqrt((double) ((x-ap.x)<em>(x-ap.x)+(y-ap.y)</em>(y-ap.y)) ); //acesso direto

//aos atributos de ap, isto porque as classes pertencem ao mesmo package

if (dcp<raio) {return raio-dcp; }

else {return dcp-raio; }

}
public void mostra()

{

System.out.println("("+this.x+","+this.y+","+this.raio+")");

}

}

2 Respostas

M

Que compilador vc está usando?

Javac?

Bem, se for o Javac, vc experimentou passar o classpath como parâmetro na linha de comando?

Nesse classpath deve estar o diretório (ou package! :grin: ) onde está o arquivo Ponto.class gerado durante a compilação da classe Ponto.java.

Se não me engano, vc pode fazer isso com o parâmetro -classpath <diretório>.

R

inclua no seu classpath o valor “.;”

e ao compilar, use
“javac *.java”

Criado 9 de novembro de 2004
Ultima resposta 10 de nov. de 2004
Respostas 2
Participantes 3