Como substituir um método em uma subclasse?
Eu tenho um programa de inventário escrito para incluir uma matriz e um método para calcular o custo total de todos os itens de inventário inseridos. Agora preciso incluir uma subclasse que substitui o original para incluir "um recurso exclusivo". Criei um novo arquivo chamado ItemDetails para configurar as subclasses do item original. Preciso incluir um recurso exclusivo e calcular o valor do inventário e calcular uma taxa de reabastecimento de 5% nesta subclasse. Acabo de transferir algumas das linhas relevantes para a outra classe? Ou escrevo algum código duas vezes? Não sei o que fazer a seguir. Qualquer ajuda é útil. Obrigado. Isto é o que eu tenho até agora:
package inventory3;
public class ItemDetails extends Items
{
public static void override()
{
private String Name;
private double pNumber, Units, Price;
public ItemDetails()
{
}
}
}
Este é o arquivo da classe Item que ele deve substituir:
package inventory3;
import java.lang.Comparable;
public class Items implements Comparable
{
private String Name;
private double pNumber, Units, Price;
public Items()
{
Name = "";
pNumber = 0.0;
Units = 0.0;
Price = 0.0;
}
public int compareTo(Object item)
{
Items tmp = (Items) item;
return this.getName().compareTo(tmp.getName());
}
public Items(String productName, double productNumber, double unitsInStock, double unitPrice)
{
Name = productName;
pNumber = productNumber;
Units = unitsInStock;
Price = unitPrice;
}
//setter methods
public void setName(String n)
{
Name = n;
}
public void setpNumber(double no)
{
pNumber = no;
}
public void setUnits(double u)
{
Units = u;
}
public void setPrice(double p)
{
Price = p;
}
//getter methods
public String getName()
{
return Name;
}
public double getpNumber()
{
return pNumber;
}
public double getUnits()
{
return Units;
}
public double getPrice()
{
return Price;
}
public double calculateTotalPrice()
{
return (Units * Price);
}
public static double getCombinedCost(Items[] item)
{
double combined = 0;
for(int i =0; i < item.length; ++i)
{
combined = combined + item[i].calculateTotalPrice();
}
return combined;
}
}