У меня есть упражнение для решения, у меня есть правильный ответ, но я не могу его получить ... Может ли кто-нибудь помочь мне в том, что происходит после каждого «шага». вот упражнение. У нас есть 2 класса: введите код здесьНаследование, что происходит после каждого шага
public class CA
{
protected String descricao;
private float valor;
public CA(String descricao, float valor)
{
this
.descricao = descricao;
this.valor = valor;
}
public String getDescricao()
{
return descricao;
}
public float getValor()
{
return valor;
}
public float teste(float a)
{
return soma(a);
}
public float soma(float a)
{
return valor + a;
}
}
и второе:
public class CB extends CA
{
private final int maxStock = 15;
private int stock;
public CB(String descricao, float valor)
{
super(descricao,valor);
stock = 0;
}
public int getStock()
{
return stock;
}
public void setStock(int actual)
{
stock = actual;
}
public int emFaltaStock()
{
return (maxStock-stock);
}
public float soma(float a)
{
return getValor() + a * 2;
}
public boolean noLimite(int minStock)
{
return ((minStock-stock) <= 0);
}
}
Вопрос заключается в том, что будет результат этих утверждений:
CB cb1 = new CB("cb1",10);
CA ca1 = cb1;
float v1= ca1.soma(2);
Я знаю, что это будет 14, но почему? Может ли кто-нибудь сказать мне?
Каков ваш ожидаемый ответ? –
Я написал это, ответ: 14. – user3508537
Вы имеете в виду, что получаете 14 в качестве ответа? И что вы ожидали? И вам нужна причина, по которой ответ 14? –