Programação Orientada a Objetos APOL 2
Programação Orientada a Objetos APOL 2
PROGRAMAÇÃO ORIENTADA A
OBJETOS AVALIAÇÃO » NOVO
Roteiro de Estudo
ABRAÃO CASTRO COELHO - RU: 4691298 Nota: 100 PROTOCOLO: 202503214691298798FCFF
Avaliações
Data de entrega: 21/03/2025 15:24
Atenção. Este gabarito é para uso exclusivo do aluno e não deve ser publicado ou compartilhado em redes sociais ou grupo de mensagens.
Trabalhos
O seu compartilhamento infringe as políticas do Centro Universitário UNINTER e poderá implicar sanções disciplinares, com possibilidade de desligamento do quadro de alunos do Centro Universitário, bem como responder ações
judiciais no âmbito cível e criminal.
Livro da Disciplina
Ler em voz alta
“Os construtores funcionam de forma parecida com os métodos, eles são códigos executados no momento da instanciação.”
Central de Vídeos
Sobre o tópico em questão considere as afirmações a seguir:
Aula Ao Vivo
I- No Java os construtores também são herdados
II- No Java, independente da superclasse uma subclasse pode sempre optar por não implementar construtor.
Tutoria
III- No Java uma subclasse pode ter várias superclasses
Fórum
É correto apenas o que se afirma em
Nota: 10.0
A I apenas
Chat
(FALSO) I. Os construtores no Java não são herdados, mas subclasses podem invocar superclasses
(FALSO) II. A subclasse tem que possuir um construtor que receba ao menos os mesmos parâmetros de um dos construtores da superclasse.
(FALSO) III. Não existe herança múltipla em Java
Avisos
Conteúdo abordado na Aula 4 - Tema 3
B II apenas
(FALSO) I. Os construtores no Java não são herdados, mas subclasses podem invocar superclasses
(FALSO) II. A subclasse tem que possuir um construtor que receba ao menos os mesmos parâmetros de um dos construtores da superclasse.
(FALSO) III. Não existe herança múltipla em Java
C I e II apenas
(FALSO) I. Os construtores no Java não são herdados, mas subclasses podem invocar superclasses
(FALSO) II. A subclasse tem que possuir um construtor que receba ao menos os mesmos parâmetros de um dos construtores da superclasse.
(FALSO) III. Não existe herança múltipla em Java
D I e III apenas
(FALSO) I. Os construtores no Java não são herdados, mas subclasses podem invocar superclasses
(FALSO) II. A subclasse tem que possuir um construtor que receba ao menos os mesmos parâmetros de um dos construtores da superclasse.
(FALSO) III. Não existe herança múltipla em Java
Você acertou!
(FALSO) I. Os construtores no Java não são herdados, mas subclasses podem invocar superclasses
(FALSO) II. A subclasse tem que possuir um construtor que receba ao menos os mesmos parâmetros de um dos construtores da superclasse.
(FALSO) III. Não existe herança múltipla em Java
I- Polimorfismo de Overloading: Múltiplas assinaturas para métodos de mesmo nome, exemplo: int maior(int,int); int maior(int, int, int);
II- Polimorfismo de coerção, forçar a troca de tipos, exemplo: int idade = (int) 30.5;
III- O polimorfismo do tipo subtipagem ocorre quando temos um tipo método com tipos de dados genéricos, exemplo: void maior(“mario”,”luigi”); void maior(15,14); A função maior recebe dados tanto tipo
String como tipo int.
A I apenas
(CORRETO) I. Neste tipo de polimorfismo, temos funções com o mesmo nome mas com parâmetros de entrada diferentes, o que permite que executem códigos distintos. Em português podemos
chamar esse conceito de sobrecarga.
(CORRETO) II. Esse tipo de polimorfismo mais frequentemente visto em códigos com tipos primitivos, embora seja possível também com objetos, ocorre quando fazemos conversão seja ela
implícita, feita de forma automática pelo compilador, ou explícita, com código descrevendo a transformação entre tipos diferentes de dados.
(FALSO) III. É a forma mais usualmente associada ao nome polimorfismo. Ela ocorre quando temos uma superclasse que possui determinado método, e suas subclasses reimplementam esse
método com outro comportamento. Lembramos que uma subclasse além de herdar métodos e atributos também herdam a tipagem, portanto é possível instanciar uma subclasse e referenciar ela
como membro da sua superclasse
B II apenas
(CORRETO) I. Neste tipo de polimorfismo, temos funções com o mesmo nome mas com parâmetros de entrada diferentes, o que permite que executem códigos distintos. Em português podemos
chamar esse conceito de sobrecarga.
(CORRETO) II. Esse tipo de polimorfismo mais frequentemente visto em códigos com tipos primitivos, embora seja possível também com objetos, ocorre quando fazemos conversão seja ela
implícita, feita de forma automática pelo compilador, ou explícita, com código descrevendo a transformação entre tipos diferentes de dados.
(FALSO) III. É a forma mais usualmente associada ao nome polimorfismo. Ela ocorre quando temos uma superclasse que possui determinado método, e suas subclasses reimplementam esse
método com outro comportamento. Lembramos que uma subclasse além de herdar métodos e atributos também herdam a tipagem, portanto é possível instanciar uma subclasse e referenciar ela
como membro da sua superclasse
C I e II apenas
Você assinalou essa alternativa (C)
Você acertou!
(CORRETO) I. Neste tipo de polimorfismo, temos funções com o mesmo nome mas com parâmetros de entrada diferentes, o que permite que executem códigos distintos. Em português podemos
chamar esse conceito de sobrecarga.
(CORRETO) II. Esse tipo de polimorfismo mais frequentemente visto em códigos com tipos primitivos, embora seja possível também com objetos, ocorre quando fazemos conversão seja ela
implícita, feita de forma automática pelo compilador, ou explícita, com código descrevendo a transformação entre tipos diferentes de dados.
(FALSO) III. É a forma mais usualmente associada ao nome polimorfismo. Ela ocorre quando temos uma superclasse que possui determinado método, e suas subclasses reimplementam esse
método com outro comportamento. Lembramos que uma subclasse além de herdar métodos e atributos também herdam a tipagem, portanto é possível instanciar uma subclasse e referenciar ela
como membro da sua superclasse
D I e III apenas
(CORRETO) I. Neste tipo de polimorfismo, temos funções com o mesmo nome mas com parâmetros de entrada diferentes, o que permite que executem códigos distintos. Em português podemos
chamar esse conceito de sobrecarga.
(CORRETO) II. Esse tipo de polimorfismo mais frequentemente visto em códigos com tipos primitivos, embora seja possível também com objetos, ocorre quando fazemos conversão seja ela
implícita, feita de forma automática pelo compilador, ou explícita, com código descrevendo a transformação entre tipos diferentes de dados.
(FALSO) III. É a forma mais usualmente associada ao nome polimorfismo. Ela ocorre quando temos uma superclasse que possui determinado método, e suas subclasses reimplementam esse
método com outro comportamento. Lembramos que uma subclasse além de herdar métodos e atributos também herdam a tipagem, portanto é possível instanciar uma subclasse e referenciar ela
como membro da sua superclasse
(CORRETO) I. Neste tipo de polimorfismo, temos funções com o mesmo nome mas com parâmetros de entrada diferentes, o que permite que executem códigos distintos. Em português podemos
chamar esse conceito de sobrecarga.
(CORRETO) II. Esse tipo de polimorfismo mais frequentemente visto em códigos com tipos primitivos, embora seja possível também com objetos, ocorre quando fazemos conversão seja ela
implícita, feita de forma automática pelo compilador, ou explícita, com código descrevendo a transformação entre tipos diferentes de dados.
(FALSO) III. É a forma mais usualmente associada ao nome polimorfismo. Ela ocorre quando temos uma superclasse que possui determinado método, e suas subclasses reimplementam esse
método com outro comportamento. Lembramos que uma subclasse além de herdar métodos e atributos também herdam a tipagem, portanto é possível instanciar uma subclasse e referenciar ela
como membro da sua superclasse
II-Classes que não tenham um construtor explícito ganham um construtor vazio implícito
Nota: 10.0
A I apenas
(FALSO) I. É possível criar quantos construtores quiser desde que recebam um conjunto de parâmetros diferentes.
(CORRETO) II. O construtor implícito só existe na ausência de outros construtores e não faz nada, apenas viabiliza a instanciação da classe sem parâmetros.
(FALSO) III. Não se deve colocar nenhum tipo de retorno no construtor, nem mesmo void.
B II apenas
Você assinalou essa alternativa (B)
Você acertou!
(FALSO) I. É possível criar quantos construtores quiser desde que recebam um conjunto de parâmetros diferentes.
(CORRETO) II. O construtor implícito só existe na ausência de outros construtores e não faz nada, apenas viabiliza a instanciação da classe sem parâmetros.
(FALSO) III. Não se deve colocar nenhum tipo de retorno no construtor, nem mesmo void.
Conteúdo abordado na Aula 4 - Tema 3
C I e II apenas
(FALSO) I. É possível criar quantos construtores quiser desde que recebam um conjunto de parâmetros diferentes.
(CORRETO) II. O construtor implícito só existe na ausência de outros construtores e não faz nada, apenas viabiliza a instanciação da classe sem parâmetros.
(FALSO) III. Não se deve colocar nenhum tipo de retorno no construtor, nem mesmo void.
D I e III apenas
(FALSO) I. É possível criar quantos construtores quiser desde que recebam um conjunto de parâmetros diferentes.
(CORRETO) II. O construtor implícito só existe na ausência de outros construtores e não faz nada, apenas viabiliza a instanciação da classe sem parâmetros.
(FALSO) III. Não se deve colocar nenhum tipo de retorno no construtor, nem mesmo void.
(FALSO) I. É possível criar quantos construtores quiser desde que recebam um conjunto de parâmetros diferentes.
(CORRETO) II. O construtor implícito só existe na ausência de outros construtores e não faz nada, apenas viabiliza a instanciação da classe sem parâmetros.
(FALSO) III. Não se deve colocar nenhum tipo de retorno no construtor, nem mesmo void.
I- Quando uma classe X possui como atributo um objeto da classe Y como atributo, a classe X deve herdar Y.
II- Quando uma classe X deseja acessar atributos e métodos privados da classe Y, a classe X deve herdar Y.
III- Herança é utilizada quando temos classes que possuem semelhanças entre métodos e atributos, a classe herdeira recebe métodos, atributos da classe herdada.
Nota: 10.0
A I apenas
B III apenas
Você assinalou essa alternativa (B)
Você acertou!
(FALSO) I. Não é o caso de aplicar herança.
(FALSO) II. Não é o caso de aplicar herança.
(CORRETO) III. Não é raro nos depararmos com uma situação na qual desejamos representar classes que possuem semelhanças entre si e em que uma das classes pode ser entendida como
baseada em outra, o conceito de herança atua neste sentido facilitando essa representação.
C I e II apenas
D I e III apenas
I- No Java “try” é o comando que associa o bloco de código que potencialmente irá gerar exceção.
II- No Java “catch” é o comando que associa o bloco de código que irá gerar o tratamento em caso de exceção.
III- No Java “finally” é o comando que associa o bloco de código que irá executar caso a exceção não ocorra.
Nota: 10.0
A I apenas
(CORRETO) I. No Java “try” é o comando que associa o bloco de código que potencialmente irá gerar exceção vem sempre junto ao “catch”.
(CORRETO) II. No Java “catch” é o comando que associa o bloco de código que irá gerar o tratamento em caso de exceção e vem sempre associado ao tipo de exceção que será capturada.
(FALSO) III. No Java, “finally” é o comando que associa o bloco de código que irá executar caso a exceção ocorra ou não.
B II apenas
(CORRETO) I. No Java “try” é o comando que associa o bloco de código que potencialmente irá gerar exceção vem sempre junto ao “catch”.
(CORRETO) II. No Java “catch” é o comando que associa o bloco de código que irá gerar o tratamento em caso de exceção e vem sempre associado ao tipo de exceção que será capturada.
(FALSO) III. No Java, “finally” é o comando que associa o bloco de código que irá executar caso a exceção ocorra ou não.
C I e II apenas
Você assinalou essa alternativa (C)
Você acertou!
(CORRETO) I. No Java “try” é o comando que associa o bloco de código que potencialmente irá gerar exceção vem sempre junto ao “catch”.
(CORRETO) II. No Java “catch” é o comando que associa o bloco de código que irá gerar o tratamento em caso de exceção e vem sempre associado ao tipo de exceção que será capturada.
(FALSO) III. No Java, “finally” é o comando que associa o bloco de código que irá executar caso a exceção ocorra ou não.
D I e III apenas
(CORRETO) I. No Java “try” é o comando que associa o bloco de código que potencialmente irá gerar exceção vem sempre junto ao “catch”.
(CORRETO) II. No Java “catch” é o comando que associa o bloco de código que irá gerar o tratamento em caso de exceção e vem sempre associado ao tipo de exceção que será capturada.
(FALSO) III. No Java, “finally” é o comando que associa o bloco de código que irá executar caso a exceção ocorra ou não.
(CORRETO) I. No Java “try” é o comando que associa o bloco de código que potencialmente irá gerar exceção vem sempre junto ao “catch”.
(CORRETO) II. No Java “catch” é o comando que associa o bloco de código que irá gerar o tratamento em caso de exceção e vem sempre associado ao tipo de exceção que será capturada.
(FALSO) III. No Java, “finally” é o comando que associa o bloco de código que irá executar caso a exceção ocorra ou não.
Nota: 10.0
A I apenas
(FALSO) I. s1 e s2 são instâncias diferentes com o mesmo conteúdo. O == neste caso compara apenas se são a mesma instância e por isso resulta em falso.
(FALSO) II. O método equals compara o conteúdo e por isso é verdadeiro.
(FALSO) III. s1 e s3 são a mesma instância por isso o resultado é verdadeiro
(FALSO) I. s1 e s2 são instâncias diferentes com o mesmo conteúdo. O == neste caso compara apenas se são a mesma instância e por isso resulta em falso.
(FALSO) II. O método equals compara o conteúdo e por isso é verdadeiro.
(FALSO) III. s1 e s3 são a mesma instância por isso o resultado é verdadeiro
C I e II apenas
(FALSO) I. s1 e s2 são instâncias diferentes com o mesmo conteúdo. O == neste caso compara apenas se são a mesma instância e por isso resulta em falso.
(FALSO) II. O método equals compara o conteúdo e por isso é verdadeiro.
(FALSO) III. s1 e s3 são a mesma instância por isso o resultado é verdadeiro
D I e III apenas
(FALSO) I. s1 e s2 são instâncias diferentes com o mesmo conteúdo. O == neste caso compara apenas se são a mesma instância e por isso resulta em falso.
(FALSO) II. O método equals compara o conteúdo e por isso é verdadeiro.
(FALSO) III. s1 e s3 são a mesma instância por isso o resultado é verdadeiro
Você acertou!
(FALSO) I. s1 e s2 são instâncias diferentes com o mesmo conteúdo. O == neste caso compara apenas se são a mesma instância e por isso resulta em falso.
(FALSO) II. O método equals compara o conteúdo e por isso é verdadeiro.
(FALSO) III. s1 e s3 são a mesma instância por isso o resultado é verdadeiro
III- Não podem servir de referência para subclasses por serem abstratas.
Nota: 10.0
A I apenas
Você assinalou essa alternativa (A)
Você acertou!
(CORRETO) I. Classes abstratas não podem ser instanciadas, ocorre um erro ao tentarmos instanciar um objeto desse tipo de classe.
(FALSO) II. Classes abstratas permitem criarmos métodos desprovidos de implementação, mas que obrigatoriamente devem ser implementados por suas subclasses.
(FALSO) III. Classes abstratas podem referenciar objetos de subclasses graças ao polimorfismo.
B II apenas
(CORRETO) I. Classes abstratas não podem ser instanciadas, ocorre um erro ao tentarmos instanciar um objeto desse tipo de classe.
(FALSO) II. Classes abstratas permitem criarmos métodos desprovidos de implementação, mas que obrigatoriamente devem ser implementados por suas subclasses.
(FALSO) III. Classes abstratas podem referenciar objetos de subclasses graças ao polimorfismo.
C I e II apenas
(CORRETO) I. Classes abstratas não podem ser instanciadas, ocorre um erro ao tentarmos instanciar um objeto desse tipo de classe.
(FALSO) II. Classes abstratas permitem criarmos métodos desprovidos de implementação, mas que obrigatoriamente devem ser implementados por suas subclasses.
(FALSO) III. Classes abstratas podem referenciar objetos de subclasses graças ao polimorfismo.
D I e III apenas
(CORRETO) I. Classes abstratas não podem ser instanciadas, ocorre um erro ao tentarmos instanciar um objeto desse tipo de classe.
(FALSO) II. Classes abstratas permitem criarmos métodos desprovidos de implementação, mas que obrigatoriamente devem ser implementados por suas subclasses.
(FALSO) III. Classes abstratas podem referenciar objetos de subclasses graças ao polimorfismo.
(CORRETO) I. Classes abstratas não podem ser instanciadas, ocorre um erro ao tentarmos instanciar um objeto desse tipo de classe.
(FALSO) II. Classes abstratas permitem criarmos métodos desprovidos de implementação, mas que obrigatoriamente devem ser implementados por suas subclasses.
(FALSO) III. Classes abstratas podem referenciar objetos de subclasses graças ao polimorfismo.
Conteúdo abordado na Aula 5 - Tema 3
Nota: 10.0
A I apenas
(CORRETO) I. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo subclasses e superclasses é uma delas.
(FALSO) II. Os nomes em questão não existem em nenhum contexto de herança.
(CORRETO) III. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo classe mãe e classe filha é uma delas.
B II apenas
(CORRETO) I. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo subclasses e superclasses é uma delas.
(FALSO) II. Os nomes em questão não existem em nenhum contexto de herança.
(CORRETO) III. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo classe mãe e classe filha é uma delas.
C I e II apenas
(CORRETO) I. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo subclasses e superclasses é uma delas.
(FALSO) II. Os nomes em questão não existem em nenhum contexto de herança.
(CORRETO) III. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo classe mãe e classe filha é uma delas.
D I e III apenas
Você assinalou essa alternativa (D)
Você acertou!
(CORRETO) I. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo subclasses e superclasses é uma delas.
(FALSO) II. Os nomes em questão não existem em nenhum contexto de herança.
(CORRETO) III. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo classe mãe e classe filha é uma delas.
(CORRETO) I. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo subclasses e superclasses é uma delas.
(FALSO) II. Os nomes em questão não existem em nenhum contexto de herança.
(CORRETO) III. Dentre os muitos nomes na literatura que descrevem a relação entre classes herdeiras e herdadas, o termo classe mãe e classe filha é uma delas.
I- No Java o “error” e “exception” são nomes distintos que descrevem a mesma coisa
III- As exceções caso não sejam tratadas pelo programador encerram o programa sem nenhuma mensagem ou detalhes adicionais
Nota: 10.0
A I apenas
(FALSO) I. No Java, “error” geralmente não tem tratamento e é relacionado com algo que ocorreu na plataforma como falta de memória. Já as “exception” geralmente podem ser manejados e
ocorrem em nível de programa, por exemplo uma divisão por zero.
(CORRETO) II. A Máquina Virtual Java detecta as exceções e devolve o controle do código para a primeira classe na pilha de chamada que seja capaz de tratar a exceção.
(FALSO) III. A JVM interrompe o programa e apresenta mensagens informando de que tipo e onde ocorreu a exceção caso o programador não tenha programado um tratamento específico.
B II apenas
Você assinalou essa alternativa (B)
Você acertou!
(FALSO) I. No Java, “error” geralmente não tem tratamento e é relacionado com algo que ocorreu na plataforma como falta de memória. Já as “exception” geralmente podem ser manejados e
ocorrem em nível de programa, por exemplo uma divisão por zero.
(CORRETO) II. A Máquina Virtual Java detecta as exceções e devolve o controle do código para a primeira classe na pilha de chamada que seja capaz de tratar a exceção.
(FALSO) III. A JVM interrompe o programa e apresenta mensagens informando de que tipo e onde ocorreu a exceção caso o programador não tenha programado um tratamento específico.
C I e II apenas
(FALSO) I. No Java, “error” geralmente não tem tratamento e é relacionado com algo que ocorreu na plataforma como falta de memória. Já as “exception” geralmente podem ser manejados e
ocorrem em nível de programa, por exemplo uma divisão por zero.
(CORRETO) II. A Máquina Virtual Java detecta as exceções e devolve o controle do código para a primeira classe na pilha de chamada que seja capaz de tratar a exceção.
(FALSO) III. A JVM interrompe o programa e apresenta mensagens informando de que tipo e onde ocorreu a exceção caso o programador não tenha programado um tratamento específico.
D I e III apenas
(FALSO) I. No Java, “error” geralmente não tem tratamento e é relacionado com algo que ocorreu na plataforma como falta de memória. Já as “exception” geralmente podem ser manejados e
ocorrem em nível de programa, por exemplo uma divisão por zero.
(CORRETO) II. A Máquina Virtual Java detecta as exceções e devolve o controle do código para a primeira classe na pilha de chamada que seja capaz de tratar a exceção.
(FALSO) III. A JVM interrompe o programa e apresenta mensagens informando de que tipo e onde ocorreu a exceção caso o programador não tenha programado um tratamento específico.
(FALSO) I. No Java, “error” geralmente não tem tratamento e é relacionado com algo que ocorreu na plataforma como falta de memória. Já as “exception” geralmente podem ser manejados e
ocorrem em nível de programa, por exemplo uma divisão por zero.
(CORRETO) II. A Máquina Virtual Java detecta as exceções e devolve o controle do código para a primeira classe na pilha de chamada que seja capaz de tratar a exceção.
(FALSO) III. A JVM interrompe o programa e apresenta mensagens informando de que tipo e onde ocorreu a exceção caso o programador não tenha programado um tratamento específico.
II- public abstract void exemplo(); é uma declaração válida de método abstrato
III- Você pode ter métodos abstratos dentro de classes não abstratas.
Nota: 10.0
A I apenas
(CORRETO) I. Está correta a forma de declarar a classe abstrata. Basta o uso do termo abstract antes do termo class
(CORRETO) II. Está correta a forma de declarar o método abstrato. Basta o uso do termo abstract antes do tipo de retorno do método
(FALSO) III. Métodos abstratos só podem ser declarados em classes abstratas.
B II apenas
(CORRETO) I. Está correta a forma de declarar a classe abstrata. Basta o uso do termo abstract antes do termo class
(CORRETO) II. Está correta a forma de declarar o método abstrato. Basta o uso do termo abstract antes do tipo de retorno do método
(FALSO) III. Métodos abstratos só podem ser declarados em classes abstratas.
C I e II apenas
Você assinalou essa alternativa (C)
Você acertou!
(CORRETO) I. Está correta a forma de declarar a classe abstrata. Basta o uso do termo abstract antes do termo class
(CORRETO) II. Está correta a forma de declarar o método abstrato. Basta o uso do termo abstract antes do tipo de retorno do método
(FALSO) III. Métodos abstratos só podem ser declarados em classes abstratas.
D I e III apenas
(CORRETO) I. Está correta a forma de declarar a classe abstrata. Basta o uso do termo abstract antes do termo class
(CORRETO) II. Está correta a forma de declarar o método abstrato. Basta o uso do termo abstract antes do tipo de retorno do método
(FALSO) III. Métodos abstratos só podem ser declarados em classes abstratas.
(CORRETO) I. Está correta a forma de declarar a classe abstrata. Basta o uso do termo abstract antes do termo class
(CORRETO) II. Está correta a forma de declarar o método abstrato. Basta o uso do termo abstract antes do tipo de retorno do método
(FALSO) III. Métodos abstratos só podem ser declarados em classes abstratas.