Buscar

Considere o trecho abaixo: public class Gerente extends Funcionario { private int senha; public boolean autentica(int senha) { ...

Considere o trecho abaixo:

public class Gerente extends Funcionario {
private int senha;

public boolean autentica(int senha) {
if (this.senha == senha) {
System.out.println("Permitido!");
return true;
} else {
return false;
}
}

// setter da senha omitido
}

I- Em Java é possível relacionarmos uma classe de tal maneira que uma delas herda tudo que a outra tem. Isto é uma relação de classe mãe e classe filha. No código fornecido, Gerente possui tudo que um Funcionario tem, ou seja, ele é uma extensão de Funcionario
II- A classe Gerente herda todos os atributos e métodos da classe mãe, ou seja, Funcionario. Para ser mais preciso, ela também herda os atributos e métodos privados, porém não consegue acessá-los diretamente. Para acessar um membro privado na filha indiretamente, seria necessário que a mãe expusesse um outro método que invocasse esse atributo ou método privado.
III- Funcionario é a superclasse de Gerente, e Gerente é a subclasse de Funcionario. Todo Gerente é um Funcionário. Outra forma é dizer que Funcionario é classe mãe de Gerente e Gerente é classe filha de Funcionario.
IV- Se precisássemos acessar os atributos que herdamos, de forma a não deixar os atributos de Funcionario, public, (pois dessa maneira qualquer um poderia alterar os atributos dos objetos deste tipo), usar um outro modificador de acesso, o protected, que fica entre o private e public. Um atributo protected só pode ser acessado (visível) pela própria classe, por suas subclasses, e pelas classes que se encontram no mesmo pacote, como no exemplo dado abaixo:

public class Funcionario {
protected String nome;
protected String cpf;
protected double salario;

// métodos devem aqui
}

Estão corretas somente:

I- Em Java é possível relacionarmos uma classe de tal maneira que uma delas herda tudo que a outra tem. Isto é uma relação de classe mãe e classe filha. No código fornecido, Gerente possui tudo que um Funcionario tem, ou seja, ele é uma extensão de Funcionario
II- A classe Gerente herda todos os atributos e métodos da classe mãe, ou seja, Funcionario. Para ser mais preciso, ela também herda os atributos e métodos privados, porém não consegue acessá-los diretamente. Para acessar um membro privado na filha indiretamente, seria necessário que a mãe expusesse um outro método que invocasse esse atributo ou método privado.
III- Funcionario é a superclasse de Gerente, e Gerente é a subclasse de Funcionario. Todo Gerente é um Funcionário. Outra forma é dizer que Funcionario é classe mãe de Gerente e Gerente é classe filha de Funcionario.
IV- Se precisássemos acessar os atributos que herdamos, de forma a não deixar os atributos de Funcionario, public, (pois dessa maneira qualquer um poderia alterar os atributos dos objetos deste tipo), usar um outro modificador de acesso, o protected, que fica entre o private e public. Um atributo protected só pode ser acessado (visível) pela própria classe, por suas subclasses, e pelas classes que se encontram no mesmo pacote, como no exemplo dado abaixo:

public class Funcionario {
protected String nome;
protected String cpf;
protected double salario;

// métodos devem aqui
}
I, II, IV
I, II, III
I, III, IV
II, III, IV
Todas as afirmacoes

Essa pergunta também está no material:

PROGRAMAÇÃO I - 5 0
1 pág.

Programação I ExatasExatas

💡 1 Resposta

User badge image

Gabriel Fagundes

Ok blz
0
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais