Geral
Programação Orientada a Objetos COM230
Semana 3
0

Questão

Considere uma classe “Calculo” que tem dois métodos “calculo”, sendo que um deles recebe dois parâmetros e outro recebe três, conforme o código em linguagem Java (em qualquer versão) a seguir.


public class Calculo { 

    public int calculo (int a, int b) {

        return a + b;

    } 

public int calculo (int a, int b, int c) {

        return a + b + c;

    }     

}


É possível afirmar que, no código apresentado:

A)

 existe um erro, pois dois métodos não podem ser declarados com o mesmo identificador e parâmetros diferentes.

B)

há um clássico exemplo de herança, em que um método, com o mesmo identificador, executa cálculos diferentes.


C)

existe um erro, pois o polimorfismo deve ser implementado em duas classes herdadas.

D)

o método “calculo” não poderia receber esse nome, pois a classe “Calculo” tem o mesmo identificador.

E)

há um exemplo de polimorfismo estático, pois existe uma sobrecarga do método “calculo”.


function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/3079/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': 'tx2BPEiLUNsvtOMDLwHAJM4tSwKPxg1r3aBDJWYvrNDq1oSzSAnDdKvkuEsjdGZn' }, body: JSON.stringify({ value: value }) }) .then(response => response.json()) .then(data => { if (data.success) { document.getElementById(`score-${questaoId}`).textContent = data.score; const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`); const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`); upBtn.classList.remove('active-up'); downBtn.classList.remove('active-down'); if (data.user_vote === 1) upBtn.classList.add('active-up'); if (data.user_vote === -1) downBtn.classList.add('active-down'); } }); }