Ir ao conteúdo
  • Cadastre-se

ajuda erro compilação


sethy

Posts recomendados

Olá pessoal , sou iniciante em java e estou tendo problemas aqui com um desenvolvimento, esta dando um erro ao compilar,se alguem puder da uma dica,

ta ae o código das classes porém não está rodando , colocarei um comentario no erro,

tenho mais uma duvida também... o compilador da ide é diferente do kit do jdk? porque se compilo utilizando ele da uma porrada de erro e na ide só da 1...

CLASSES

AQUI CLASS MAIN



public class Main {


public static void main(String[] args){




OrdemServico os = Main.criaOS();
SalvarOs so = new SalvarOs();

so.salva(os); //aqui da erro!




}

public static OrdemServico criaOS(){
OrdemServico os = new OrdemServico();


os.data_entrada = "20/12/2012";
os.data_termino="07/01/2013";
os.defeito_apresentado = "injecao falhando";
os.peca_trocada = "injeção";
os.num_os = 1;
os.desconto = 30;


return os;
}

public static OrdemServico criaOS(Cliente cliente){
OrdemServico os = new OrdemServico();


os.cliente.nome = "Jose";

return os;
}

public static OrdemServico criaOS(Veiculo veiculo){
OrdemServico os = new OrdemServico();


os.veiculo.marca="Ford";
os.veiculo.modelo="Focus";
os.veiculo.cor="preto";
os.veiculo.placa="CIE6834";

return os;
}
}
package oficinacarrao;  

AQUI CLASS ORDEMSERVICO




public class OrdemServico {





protected String data_entrada;
protected String data_saida;
protected Cliente cliente;
protected Veiculo veiculo;
protected String defeito_apresentado;
protected int num_os;
protected String peca_trocada;
protected double valor_total;
protected double desconto;
protected String data_termino;
protected int debita_estoque_pc;





public static void MaoObra(){

}

public static void CondicaoPgto(){

}
}
package oficinacarrao;  

AQUI SALVAR



import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;



/**
*
* @author Christeffer,Filipe e Marcio
*/
public class Salvar {

FileWriter arquivo;
BufferedWriter escritor;

private void abrirArquivo(){

try {
arquivo = new FileWriter("C:\\OrdemServico.txt");
} catch (IOException e) {
System.out.println("Ocorreu um erro ao abrir o arquivo: " + e.getMessage());
}

escritor = new BufferedWriter(arquivo);
}

public void escreverLinha(String linha){
if (escritor == null){
abrirArquivo();
}

try {
escritor.write(linha);
escritor.flush();
} catch (IOException e) {
System.out.println("Ocorreu um erro ao ler a linha: " + e.getMessage());
e.printStackTrace();
}
}

public void fecharArquivo(){
try {
arquivo.close();
} catch (IOException e) {

}
}

}

package oficinacarrao;  

AQUI SALVAR OS


* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package oficinacarrao;

/**
*
* @author Usuario
*/
public class SalvarOs extends Salvar {

private final String ARQUIVO = "C:\\OrdemServico.txt";


public void salva(OrdemServico os,OrdemServico cliente,OrdemServico veiculo){
String linha = new String();


linha = os.data_entrada;
linha = linha + os.data_termino;
linha = linha + os.defeito_apresentado;
linha = linha + os.cliente.nome;
linha = linha + os.peca_trocada;
linha = linha + os.num_os;
linha = linha + os.desconto;
linha = linha + os.veiculo.marca;
linha = linha + os.veiculo.modelo;
linha = linha + os.veiculo.cor;
linha = linha + os.veiculo.placa;

super.escreverLinha(linha);
}

}
/* 

AQUI CLIENTE


* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package oficinacarrao;

/**
*
* @author CHRIS
*/
public class Cliente extends Pessoa{

Cliente cliente = new Cliente();

protected String nome_pais;
}

/* 

E AQUI VEICULO


* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package oficinacarrao;

/**
*
* @author CHRIS
*/
public class Veiculo {

Veiculo veiculo = new Veiculo ();

protected int ano;
protected String marca;
protected String modelo;
protected String cor;
protected String placa;
protected String km;
protected String tipo;
}

/* 

OBRIGADO!

Link para o comentário
Compartilhar em outros sites

Cola o erro que aparece pra você.

O seu método salva recebe 3 objetos do tipo OrdemServico e você tá passando somente um objeto, veja se não tá aí o problema.

Se tento declarar as outras duas ele não as reconhece como tais!

Método salva não pode ser aplicada nos tipos dados !!

Coloquei um print anexo com a imagem do erro !!!

post-135017-13884964400929_thumb.jpg

Link para o comentário
Compartilhar em outros sites

Cola o erro completo mano. Assim da pra saber exatamente a linha do código que ta chamando o erro.


method salva in class oficinacarrao.SalvarOS cannot be aplied to given types

required: oficinacarrao.OrdemServico, oficinacarrao.OrdemServico, oficinacarrao.OrdemServico

found: oficinacarrao.OrdemServico

Lembrando que ja tentei passar dentro desse salvar ai além de os,cliente e veiculo por parametro e ele não enxerga como variável !!!

Link para o comentário
Compartilhar em outros sites


method salva in class oficinacarrao.SalvarOS cannot be aplied to given types

required: oficinacarrao.OrdemServico, oficinacarrao.OrdemServico, oficinacarrao.OrdemServico

found: oficinacarrao.OrdemServico

Lembrando que ja tentei passar dentro desse salvar ai além de os,cliente e veiculo por parametro e ele não enxerga como variável !!!

Cara, se você declarou o método salva para receber 3 argumentos você terá que passar esses 3 argumentos quando for usá-lo. O erro ta claro.

Link para o comentário
Compartilhar em outros sites

Cara, se você declarou o método salva para receber 3 argumentos você terá que passar esses 3 argumentos quando for usá-lo. O erro ta claro.

se fizer isso e criar as incializações ai ele da esse erro


Exception in thread "main" java.lang.NullPointerException
at oficinacarrao.SalvarOs.salva(SalvarOs.java:23)
at oficinacarrao.Main.main(Main.java:26)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)

Que é respectivamente a mesma linha daquela hr alem da linha da classe salvaros

linha=linha + os.cliente.nome;

Link para o comentário
Compartilhar em outros sites

  • Moderador

Talvez só com estas classes não dê para encontrar o erro. se possível postar todas as classes do seu projeto ou zipar tudo e enviar algum server gratuito.. porque senão fica impossível de testar...

uma coisa é certa, se você declarou 3 parâmetros , ou seja, é necessário que existam estes três parâmetros. Pode ser que você tenha errado em alguma parte.

Link para o comentário
Compartilhar em outros sites

Talvez só com estas classes não dê para encontrar o erro. se possível postar todas as classes do seu projeto ou zipar tudo e enviar algum server gratuito.. porque senão fica impossível de testar...

uma coisa é certa, se você declarou 3 parâmetros , ou seja, é necessário que existam estes três parâmetros. Pode ser que você tenha errado em alguma parte.

http://bitshare.com/files/zxf36flk/oficinacarrao.rar.html

Anexei todas!!

acho q o problema está a variável nome declarada como cliente ser do tipo pessoa e a classe cliente extend pessoa da uma olhada nessa parte pra ver o que você acha!!

Obrigado pela ajuda pessoa!!!

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!