Ho un piccollo problema con i costruttori; cioè mi spiego;ho una superclasse FATTURAPROFORMA nel quale ho definito tre costruttori con parametri diversi
public class FatturaProforma
{
public java.util.Date Data;
public int NumeroFattura;
public int NumeroRighe;
public RigheDocumento Righe[];
public int IndiceRighe;
public String Fornitore;
public String Cliente;
public float TotaleFattura;
public FatturaProforma(int xNumeroFattura)
{
NumeroFattura=xNumeroFattura;
}
public FatturaProforma(java.util.Date xData, String xCliente , String xFornitore, int xNumeroRighe)
{
NumeroFattura=2;
Data= xData;
Fornitore=xFornitore;
Cliente=xCliente;
IndiceRighe=0;
NumeroRighe=xNumeroRighe;
Righe=new RigheDocumento[NumeroRighe];
}
public FatturaProforma(java.util.Date xData, String xCliente , String xFornitore, int xNumeroRighe,int xNumeroFattura)
{
NumeroFattura=xNumeroFattura;
Data= xData;
Fornitore=xFornitore;
Cliente=xCliente;
IndiceRighe=0;
NumeroRighe=xNumeroRighe;
Righe=new RigheDocumento[NumeroRighe];
}
…………….
…………….
…………….
…………….
E fino qui tutto normale in teoria ma poi quando dalla classe derivata di FATTURAPROFORMA provo a chiamare in costruttore con due interi alla fine (delle variabili passate) non me lo permette, l’unico costruttore che posso utilizzare è il secondo quello con un solo intero alla fine tra le variabili passate
import java.io.*;
class FatturaVendita extends FatturaProforma
{
public double Sconto=1.5;
int Peso;
int Controllo=0;
public static void main(String args[])
{
GestioneFattureProforma ppp=new GestioneFattureProforma();
FatturaVendita FV1 = new FatturaVendita( new java.util.Date(),"cliente vendita","fornitore di venditaPISO", 4 );
ppp.StampaFatturaVendita(FV1);
//FV1.LeggiRiga(); //Chiama il maetodo LeggiRiga() lella classe FatturaProforma
//System.out.print(FV1.PassaTotaleNetto());
System.out.println("");
System.out.print("Totale Fattura:.....");
System.out.println((int) FV1.PassaTotaleFattura());
System.out.print("Totale Scontato:....");
System.out.println(((int)FV1.PassaTotaleFattura())- (((int)FV1.PassaTotaleFattura())*(FV1.PassaSconto( )/100)) );
System.out.print("Totale Netto:....");
System.out.println(FV1.PassaTotaleNetto());
System.out.print("Totale Lordo:....");
System.out.println(FV1.PassaTotaleLordo());
FV1.InArchivio(FV1,FV1.GeneraNomeFileIntestazione( FV1.NumeroFattura));
FV1.Modifica(FV1,FV1.GeneraNomeFileIntestazione(FV 1.NumeroFattura));
}
…………….
…………….
…………….
…………….
COME MAI???