Acerca da linguagem de programação Java e da programação orientada a objetos, julgue os itens seguintes.

O sistema de objetos distribuídos RMI (remote method invocation) permite que objetos Java e objetos não Java sejam acessados remotamente como se fossem locais.

O desenvolvimento de software orientado a objetos atingiu um estado de maturidade que permitiu a criação de elementos metodológicos de eficácia comprovada, incluindo uma linguagem de modelagem unificada, a UML (unified modeling language). Acerca das metodologias da orientação a objetos e da linguagem UML, julgue os itens seguintes.

Uma das formas de reutilização aplicável na análise orientada a objetos é a procura por padrões de projeto já conhecidos e validados e para os quais tenha sido divulgado um molde para a criação de classes e objetos.

A orientação a objetos favorece a aplicação de diversos conceitos considerados fundamentais para o desenvolvimento de programas. Acerca das definições relacionadas à orientação a objetos, julgue os itens seguintes.

A abstração foca os aspectos essenciais a um objeto, o que permite ao desenvolvedor concentrar-se no que um objeto é, antes de decidir como será implementado.

A respeito de conceitos de orientação a objetos, julgue os seguintes itens.

Na linguagem Java, um construtor de subclasse deve sempre chamar o construtor de superclasse como sua primeira instrução. Caso não exista esse construtor, o compilador Java irá inserir automaticamente uma chamada da superclasse, o que funcionará apenas se a superclasse tiver um construtor sem parâmetros. Caso contrário, será informada a ocorrência de erro.

A programação orientada a objetos fornece diversos elementos conceituais e estruturas de programa para a construção de softwares modulares e reutilizáveis. Acerca da programação orientada a objetos, julgue os itens a seguir.

Quando um método de superclasse é sobrescrito em uma subclasse, a versão da subclasse fica impossibilitada de chamar a versão da superclasse.

Acerca da programação orientada a objetos, assinale a opção correta.
No que se refere a processamento de linguagem natural, árvores de decisão e Python, julgue o item que se segue.

Considere que um algoritmo de árvore de decisão utilize entropia como medida de impureza para realizar as divisões dos dados em diferentes nós da árvore. Considere ainda que a entropia seja máxima quando a distribuição das classes é perfeitamente equilibrada e mínima quando todos os exemplos pertencem a uma única classe. Nesse caso, em uma partição contendo 100 exemplos classificados em três categorias A, B e C, a entropia da partição é maior no cenário em que há 33 exemplos de cada classe do que no cenário em que há 90 exemplos da classe A, 5 da classe B e 5 da classe C, mesmo que o número total de exemplos na partição seja o mesmo em ambos os casos.
Assinale a opção correta em relação ao polimorfismo.
Em Java, uma composition
Assinale a opção correta no que se refere a interfaces e classes abstratas.
Considerando que a escolha entre herança e composição impacta diretamente a flexibilidade e o acoplamento de um sistema orientado a objetos, assinale a opção correta.

Julgue os itens a seguir, de acordo com o princípio da responsabilidade única (PRS) do SOLID.

I Uma classe deve ser aberta para extensão, mas fechada para modificação.

II Objetos em um programa devem ser substituíveis por instâncias de seus subtipos sem alteração da correção do programa.

III Uma classe deve depender de abstrações, e não de implementações concretas.

Assinale a opção correta.

Assinale a opção correta, a respeito de composição na programação orientada a objetos.

public class aluno {

private String nome;

private int idade;

public String getNome() { return nome; }

public void setNome(String nome) {

this.nome = nome; }

public int getIdade() { return idade; }

public void setIdade(int idade) {

if (idade > 0) { this.idade = idade; }

}

}


Assinale a opção em que é citada a propriedade da programação orientada a objetos evidenciada no código Java precedente.

No que se refere à herança na programação orientada a objetos, assinale a opção correta.

class ContaBanrisul {

consultarSaldo() { }

}

class ContaCorrente extends ContaBanrisul {

consultarSaldo() { return "Conta Corrente:

R$ 22.000,01"; }

} class PrevidenciaPrivada extends ContaBanrisul {

consultarSaldo() { return "Previdência:

R$ 120.000,53"; }

}

const contaCorrente = new ContaCorrente();

const previdencia = new PrevidenciaPrivada();


console.log(contaCorrente.consultarSaldo());

console.log(previdencia.consultarSaldo());


Com base no código precedente, em JavaScript, e nos conceitos da orientação a objetos, é correto afirmar que, nas duas últimas linhas, consultarSaldo() constitui

Acerca do polimorfismo, julgue os itens a seguir.

I O uso de polimorfismo reduz a duplicação de código visto que permite abstrações genéricas.

II Interfaces são frequentemente utilizadas na aplicação de polimorfismo por contrato.

III Métodos polimórficos devem ser declarados exclusivamente como privados.

Assinale a opção correta.

Página 18