Um programador de sistemas criou a classe XYZ abaixo, utili...

Próximas questões
Com base no mesmo assunto
Q2369504 Programação

Um programador de sistemas criou a classe XYZ abaixo, utilizando a linguagem C++ 


class XYZ{

private:

 int H;

 void G();

 protected:

 float N;

 void P();

public:

 int R;

 int T();};



Ele vai construir uma outra classe que vai herdar as características da classe XYZ.

Neste caso, essa nova classe pode ter acesso aos seguintes componentes da Classe XYZ: 

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: D - N, T

A questão aborda o tema de herança em programação orientada a objetos na linguagem C++. Herança é um conceito chave neste paradigma de programação, que permite que uma classe derive de outra, herdando suas características, como atributos (também chamados de campos ou variáveis de membro) e métodos (funções associadas a uma classe).

Na linguagem C++, existem três níveis de acesso aos membros de uma classe: public, private e protected. O nível de acesso public permite que o membro seja acessado por qualquer outro código. O nível private restringe o acesso apenas à própria classe. Por fim, o nível protected é similar ao private, mas permite o acesso por classes derivadas (subclasses), além da própria classe.

A classe XYZ tem membros privados (int H e o método void G()), protegidos (float N e o método void P()) e públicos (int R e o método int T()). Quando uma nova classe herda de XYZ, ela pode acessar diretamente os membros protegidos e públicos da classe base, mas não os membros privados.

Portanto, a alternativa correta é a D, pois a nova classe derivada de XYZ terá acesso ao membro protegido N e ao membro público T(). Os membros H e G(), por serem privados, não são acessíveis pela classe derivada, e o membro P() não foi listado na alternativa correta. Assim, a justificativa para a alternativa D estar correta é que ela identifica corretamente os membros que uma subclasse pode acessar de acordo com as regras de visibilidade da herança em C++.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo