Erro ao compilar arquivo

5 respostas
X

Estou tendo o seguite erro ao executar minha linha de codigos do "DataSourceArquivoTexto", alguem poderia me ajudar?
grato desde ja

import java.util.ArrayList;
import java.io.*;


public class  DataSourceArquivoTexto extends DataSource {
	
	
 	//Nome dos arquivos que serão serializados
    private String propArquivo;
    //private String multaArquivo;
    
    //Listas para trabalhar em memória
    private ArrayList proprietarios;
    //private ArrayList multas;
    
    public DataSourceArquivoTexto(String propArq){
    propArquivo=propArq;
    proprietarios = new ArrayList();
    
    try{
    	FileInputStream fis = new FileInputStream(propArquivo);
    	ObjectInputStream in = new ObjectInputStream(fis);
    	
    	int propquant = in.readInt();
    	
    	for(int i=0; i<propquant; i++){
    		Object p = in.readObject();
    		proprietarios.add(p);
    	}
    }catch(Exception ex){
    	System.out.println(ex.getMessage());
    }
    }
//Método para adicionar proprietário
    public boolean adiciona_p(Proprietario p){
    	if(p==null) return false;
    	if (consulta_prop(p.getPlaca())!=null){
    		return false;
    	}
    	else{
    		proprietarios.add(p);
    		return true;
    	}
    }
    
    //Método para retornar quantidade
    public int getQuant(){
    	return proprietarios.size();
    }
    
    //Método para gravar informações
    public boolean gravaInformacoes(){
    	try{
    		FileOutputStream fos = new FileOutputStream(propArquivo);
    		ObjectOutputStream out = new ObjectOutputStream(fos);
    		out.writeInt(getQuant());
    		for(int i=0; i<getQuant(); i++){
    			out.writeObject(proprietarios.get(i));
    		}
    	}catch(Exception ex){
    		System.out.println(ex.getMessage());
    		return false;
    	}
    	return true;
    }
    
    public java.lang.String getNomeArquivo() {
        return propArquivo;
    }
    
    /**
     * Setter for property nomeArquivo.
     * @param nomeArquivo New value of property nomeArquivo.
     */
    public void setNomeArquivo(java.lang.String propArquivo) {
        this.propArquivo = propArquivo;
    }
    
    
     
            
    
}

Estou tendo a mensagem de erro "DataSourceArquivoTexto is not abstract and does not override abstract method getProprietarios() in DataSource"

segue o arquivo "DataSource" :

public abstract class DataSource {

    public abstract boolean adiciona_p (Proprietario p);
    
    //public abstract boolean adiciona_m (Multas m);
    
    public abstract Proprietario consulta_prop(String nome);
    
    //public abstract Multa consulta_placa (String placa);
    
    public abstract Proprietario[] getProprietarios();
    
    //public abstract Multa[] getMultas();
    
    public abstract int getQuant();
    
    public abstract boolean gravaInformacoes();
    
    
}

5 Respostas

rogelgarcia

DataSourceArquivoTexto is not abstract and does not override abstract method getProprietarios() in DataSource

traducao…

DataSourceArquivoTexto não é abstrata e não sobrescreve o método abstrato getProprietarios() que está em DataSource

X

desculpe, mas nao consegui resolver somente traduzindo o erro, por este motivo criei este topico, para saber como reparar meu codigo.

rogelgarcia

http://javafree.uol.com.br/topic-858005-Classe-abstrata.html

Estude classes abstratas…

PaduaAlves

O problema cara, é que vc tem uma classe abstrata Data source e uma classe que herda dela, a DataSourceArquivoTexto. Quando vc herda de uma classe abstrata, vc é OBRIGADO a sobrescrever todos os métodos habstratos da classe herdada. Logo, vc vai ter que ter um método getProprietarios() na sua classe DataSourceArquivoTexto, assim como deve ter todos os outros métodos abstratos que estão na classe DataSource.

X

aee resolveu meu problema =D
brigadao cara ^^
criei as classes no arquivotexto e foi de boa

Criado 28 de maio de 2010
Ultima resposta 5 de jun. de 2010
Respostas 5
Participantes 3