Pular para o conteúdo

erro no javac [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. erro no javac [RESOLVIDO]

Enviado em 03/10/2008 - 11:46h

To mechendo nesse codigo ai abaixo e compilando no javac, ta dando esse erro aqui ??

C:\atividade03>javac TestaPilotoBox.java
TestaPilotoBox.java:6: cannot find symbol
symbol : constructor PilotoBox(java.lang.String,Box)
location: class PilotoBox
PilotoBox um = new PilotoBox("Rubinho",b);
^
TestaPilotoBox.java:7: cannot find symbol
symbol : constructor PilotoBox(java.lang.String,Box)
location: class PilotoBox
PilotoBox dois = new PilotoBox("Schumacher",b);
^
TestaPilotoBox.java:8: cannot find symbol
symbol : constructor PilotoBox(java.lang.String,Box)
location: class PilotoBox
PilotoBox tres = new PilotoBox("Montoya",b);
^
3 errors


oque sera???


valeu !!!

[code]
//--------------------------------------------------------------

class TestaPilotoBox{
public static void main(String args[]){
Box b=new Box();
PilotoBox um = new PilotoBox("Rubinho",b);
PilotoBox dois = new PilotoBox("Schumacher",b);
PilotoBox tres = new PilotoBox("Montoya",b);
um.start();
dois.start();
tres.start();
}
}


//--------------------------------------------------------------
class PilotoBox extends Thread{
private String nome;
private int tempo;
Box b=new Box();
public PilotoBox(String str){
nome = str;
}
public void run(){
tempo = (int) ( Math.random() * 5000 );
System.out.println("*** LARGADA " + nome + "***");
for (int i=1;i<50000;i++){}
System.out.println(nome + " solicitou pitStop");
for (int i=1;i<50000;i++){}
b.pitStop(nome);
System.out.println(nome + " -> Terminou a Corrida !!!");
}
}

//--------------------------------------------------------------


class Box {
public synchronized void pitStop(String nome){
System.out.println(Thread.currentThread().getName()+"\t" +
nome);
notify();
}
}

Responder tópico

2. Re: erro no javac [RESOLVIDO]

Enviado em 03/10/2008 - 11:52h

O que está acontecendo é que você não definiu um segundo construtor, que recebe uma String e um Box.
O único construtor que você definiu recebe "somente" uma String.

Para funcionar do jeito que você quer, você teria que criar um segundo construtor recebendo os dois parâmetros que você quer passar, e dentro desse construtor, você chama o outro, passando a String recebida.

Falou

IT Tips - http://douglascrp.blogspot.com

3. ae

Enviado em 03/10/2008 - 15:09h

para ficar mais facil, ja que parece ser um iniciante no java, como o amigo falou ai, mude o código de:
public PilotoBox(String str){
nome = str;
}

para
public PilotoBox(String str, Box objBox){
nome = str;
b = objBox;
}

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder