FC ConcursosFC Concursos

Questão FC266127

Observe a seguinte porção de código em Java: public class Manager extends Employee { adicionar métodos e campos } public class Manager extends Employee { private double bonus; . .

Linguagens de Programação

IDECAN · 2022

Observe a seguinte porção de código em Java:

 

public class Manager extends Employee

{

adicionar métodos e campos

}

public class Manager extends Employee

{

private double bonus;

. . .

public void setBonus(double bonus)

{

this.bonus = bonus;

}

}

 

Sobre a porção de código Java acima, analise as afirmativas a seguir:

 

I. Se você tem um objeto Manager, você pode simplesmente aplicar o método setBonus da seguinte forma: Manager boss = . . .; boss.setBonus(5000);

 

II. Se você tiver um objeto Employee, poderá aplicar o método setBonus.

 

III. Você não pode usar métodos como getName e getHireDay com objetos Manager.

 

IV. Embora esses métodos não sejam definidos explicitamente na classe Manager, eles são herdados automaticamente da superclasse Employee.

 

Assinale

  1. se apenas as afirmativas I e II estiverem corretas.
  2. se apenas as afirmativas II e III estiverem corretas.
  3. se apenas as afirmativas I e IV estiverem corretas.
  4. se apenas as afirmativas II e IV estiverem corretas.
Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

As afirmativas validadas dizem que I e IV estão corretas. Isso ocorre porque a classe Manager declara explicitamente o método setBonus, logo um objeto do tipo Manager pode chamá‑lo normalmente, por exemplo: Manager boss = ...; boss.setBonus(5000);.

Além disso, por herança, a subclasse Manager recebe automaticamente os métodos da superclasse Employee que forem acessíveis (como public ou protected, ou package‑private quando no mesmo pacote). Assim, métodos como getName e getHireDay podem ser utilizados em instâncias de Manager, sem precisarem ser redefinidos na subclasse.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo