Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornaCor(){ Assinale a alternativa INCORRETA. A. B. return “Azul”; }; C. private String retornaChassi(){ return “0000”; D. }; protected String retornaAno(){ return “2000”; }; } E. O método retornaChassi() só pode ser chamado na classe Carro. O método retornaChassi() pode ser chamado a partir de outra classe desde que esteja no mesmo pacote da classe Carro. O método retornaAno() pode ser chamado de qualquer classe do mesmo pacote. O método retornaCor() pode ser chamado em uma qualquer classe do projeto. Os métodos retornaCor() e retornaAno() podem ser chamados na classe Carro. Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornaCor(){ Assinale a alternativa INCORRETA. A. B. return “Azul”; }; C. private String retornaChassi(){ return “0000”; D. }; protected String retornaAno(){ return “2000”; }; } E. O método retornaChassi() só pode ser chamado na classe Carro. O método retornaChassi() pode ser chamado a partir de outra classe desde que esteja no mesmo pacote da classe Carro. O método retornaAno() pode ser chamado de qualquer classe do mesmo pacote. O método retornaCor() pode ser chamado em uma qualquer classe do projeto. Os métodos retornaCor() e retornaAno() podem ser chamados na classe Carro. Questão 2 class Mercadoria extends JFrame implements ActionListener { private int codigo; protected String fabricante; public float peso; public float preco; static int totalEmEstoque; int getCodigo() { return codigo; } public Mercadoria (int n) { totalEmEstoque = n; } public int Compra() { return --totalEmEstoque; } } Assinale V ou F : ( ) A classe, tal como está, não compilará corretamente; ( ) O comando Mercadoria m = new Mercadoria(); cria uma instância da classe com seus atributos zerados automaticamente pela máquina virtual. Questão 2 class Mercadoria extends JFrame implements ActionListener { private int codigo; protected String fabricante; public float peso; public float preco; static int totalEmEstoque; int getCodigo() { return codigo; } public Mercadoria (int n) { totalEmEstoque = n; } public int Compra() { return --totalEmEstoque; } } Assinale V ou F : ( V ) A classe, tal como está, não compilará corretamente; ( F ) O comando Mercadoria m = new Mercadoria(); cria uma instância da classe com seus atributos zerados automaticamente pela máquina virtual. Questão 3 Leia o texto abaixo, preencha corretamente as lacunas e, em seguida, assinale a opção correta. Para compreender o paradigma de orientação a objetos, é necessário entender alguns conceitos, como o de _______________, que representa uma categoria, e o de _______________, que são exemplos dessa categoria, ou seja, são _______________ de uma classe. A seqüência correta é: A. B. C. D. classe / objetos / instâncias objeto / classes / instâncias classe / objetos / heranças encapsulamento / atributos / objetos Questão 3 Leia o texto abaixo, preencha corretamente as lacunas e, em seguida, assinale a opção correta. Para compreender o paradigma de orientação a objetos, é necessário entender alguns conceitos, como o de _______________, que representa uma categoria, e o de _______________, que são exemplos dessa categoria, ou seja, são _______________ de uma classe. A seqüência correta é: A. B. C. D. classe / objetos / instâncias objeto / classes / instâncias classe / objetos / heranças encapsulamento / atributos / objetos Questão 4 O polimorfismo é uma das características mais poderosas e importantes da orientação a objetos. Assinale a opção que apresenta a definição de polimorfismo. A. B. C. D. Caracterização de uma classe a partir de duas ou mais superclasses. Redeclaração de métodos previamente herdados por uma classe, diferindo de alguma forma da implementação utilizada na superclasse. Nível de acessibilidade de determinado atributo ou método. Características de uma classe que costumam variar de objeto para objeto. Questão 4 O polimorfismo é uma das características mais poderosas e importantes da orientação a objetos. Assinale a opção que apresenta a definição de polimorfismo. A. B. C. D. Caracterização de uma classe a partir de duas ou mais superclasses. Redeclaração de métodos previamente herdados por uma classe, diferindo de alguma forma da implementação utilizada na superclasse. Nível de acessibilidade de determinado atributo ou método. Características de uma classe que costumam variar de objeto para objeto. Questão 5 As alternativas a seguir apresentam opções que podem ser feitas com uma classe abstrata em Java, à exceção de uma. Assinale‐a. A. B. C. D. E. Definir variáveis de classe (estáticas). Herdar de outra classe abstrata. Herdar de uma classe concreta (não abstrata) Subclasses. Instanciar objetos da classe. Questão 5 As alternativas a seguir apresentam opções que podem ser feitas com uma classe abstrata em Java, à exceção de uma. Assinale‐a. A. B. C. D. E. Definir variáveis de classe (estáticas). Herdar de outra classe abstrata. Herdar de uma classe concreta (não abstrata) Subclasses. Instanciar objetos da classe. Questão 6 Considere o cenário em que uma classe filha (ou subclasse), ClasseA, sobrescreve todos os métodos públicos de sua classe mãe (ou superclasse), ClasseBase. No que diz respeito aos métodos, assinale a alternativa que indica o que a classe ClasseA herda da classe ClasseBase. A. B. C. D. E. Um singleton. A sobrecarga dos métodos. Nada. O encapsulamento. A interface. Questão 6 Considere o cenário em que uma classe filha (ou subclasse), ClasseA, sobrescreve todos os métodos públicos de sua classe mãe (ou superclasse), ClasseBase. No que diz respeito aos métodos, assinale a alternativa que indica o que a classe ClasseA herda da classe ClasseBase. A. B. C. D. E. Um singleton. A sobrecarga dos métodos. Nada. O encapsulamento. A interface. Questão 7 Public class Main { Public static String localizacao (String pais){ //O corpo do método está faltando } Public static void main(String[] args) Assinale a alternativa, para o corpo do método localizacao(), que faz com que o programa, quando executado, gere como saída: Brasil Brasil { String str = localizacao("Brasil"); System.out.println(str); A. B. C. } } System.out.println(pais); return pais; System.out.println(pais); return pais; D. E. return pais; System.out.println (pais); System.out.println(pais); System.out.println(pais); Questão 7 Public class Main { Public static String localizacao (String pais){ //O corpo do método está faltando } Public static void main(String[] args) Assinale a alternativa, para o corpo do método localizacao(), que faz com que o programa, quando executado, gere como saída: Brasil Brasil { String str = localizacao("Brasil"); System.out.println(str); A. B. C. } } System.out.println(pais); return pais; System.out.println(pais); return pais; D. E. return pais; System.out.println (pais); System.out.println(pais); System.out.println(pais); Questão 8 A linguagem Java oferece diversos recursos que auxiliam no desenvolvimento de software. Todas as alternativas apresentam recursos disponíveis atualmente na linguagem Java, EXCETO A. B. C. D. E. tipos genéricos. herança múltipla. métodos abstratos. enumerações. classes aninhadas. Questão 8 A linguagem Java oferece diversos recursos que auxiliam no desenvolvimento de software. Todas as alternativas apresentam recursos disponíveis atualmente na linguagem Java, EXCETO A. B. C. D. E. tipos genéricos. herança múltipla. métodos abstratos. enumerações. classes aninhadas. Questão 9 Assinale verdadeiro ( V ) ou falso ( F ) em cada afirmativa sobre a linguagem Java. ( ) Um programador pode levantar uma exceção explicitamente. ( ) Todos os tipos primitivos são, na verdade, classes em Java, incluindo int, double e float. ( ) É possível usar modificadores de visibilidade, tais como public e private, para configurar quem pode acessar os atributos de uma classe. A sequência correta é A. B. C. D. E. V - F - F. V - V - V. V - F - V. F - V - F. F - V - V. Questão 9 Assinale verdadeiro ( V ) ou falso ( F ) em cada afirmativa sobre a linguagem Java. ( ) Um programador pode levantar uma exceção explicitamente. ( ) Todos os tipos primitivos são, na verdade, classes em Java, incluindo int, double e float. ( ) É possível usar modificadores de visibilidade, tais como public e private, para configurar quem pode acessar os atributos de uma classe. A sequência correta é A. B. C. D. E. V - F - F. V - V - V. V - F - V. F - V - F. F - V - V. Questão 10 Em linguagens de programação orientadas a objetos, é possível, e freqüentemente desejável, criar mais de um método em uma m esma classe com o mesmo nome, mas com uma lista de parâmetros diferentes. O nome dado a essa característica é: A. B. C. D. E. sobrescrita de método (override); herança; sobrecarga de método (overload); reflexão; polimorfismo. Questão 10 Em linguagens de programação orientadas a objetos, é possível, e freqüentemente desejável, criar mais de um método em uma m esma classe com o mesmo nome, mas com uma lista de parâmetros diferentes. O nome dado a essa característica é: A. B. C. D. E. sobrescrita de método (override); herança; sobrecarga de método (overload); reflexão; polimorfismo. Questão 11 Dadas as assertivas a seguir referentes à programação orientada a objetos (POO): I. II. O encapsulamento é à base de toda a abordagem dessa metodologia de programação e diz-se que um dado está encapsulado quando envolvido por código de forma que só é visível na rotina onde foi criado; o mesmo acontece com uma rotina, que sendo encapsulada, suas operações internas são invisíveis às outras rotinas. Herança é uma característica importante de POO, pois permite que uma classe filha (classe derivada ou ainda subclasse) agregue aos seus próprios atributos, ou variáveis, os atributos de uma classe pai (classe base ou ainda superclasse), embora tenha que implementar todos os seus métodos ou funções-membro. III. IV. Na orientação a objetos, uma classe é uma abstração de software que pode representar algo real ou virtual. Uma classe é formada por um conjunto de propriedades (variáveis ou atributos) e procedimentos (métodos ou funçõesmembro). Polimorfismo é a técnica de POO que permite trabalhar com instâncias de classes diferentes, de forma unificada, via uma abstração comum a elas. indique a opção que contenha as afirmações verdadeiras. A. B. C. D. E. I e II II e III III e IV I e III II e IV Questão 11 Dadas as assertivas a seguir referentes à programação orientada a objetos (POO): I. II. O encapsulamento é à base de toda a abordagem dessa metodologia de programação e diz-se que um dado está encapsulado quando envolvido por código de forma que só é visível na rotina onde foi criado; o mesmo acontece com uma rotina, que sendo encapsulada, suas operações internas são invisíveis às outras rotinas. Herança é uma característica importante de POO, pois permite que uma classe filha (classe derivada ou ainda subclasse) agregue aos seus próprios atributos, ou variáveis, os atributos de uma classe pai (classe base ou ainda superclasse), embora tenha que implementar todos os seus métodos ou funções-membro. III. IV. Na orientação a objetos, uma classe é uma abstração de software que pode representar algo real ou virtual. Uma classe é formada por um conjunto de propriedades (variáveis ou atributos) e procedimentos (métodos ou funçõesmembro). Polimorfismo é a técnica de POO que permite trabalhar com instâncias de classes diferentes, de forma unificada, via uma abstração comum a elas. indique a opção que contenha as afirmações verdadeiras. A. B. C. D. E. I e II II e III III e IV I e III II e IV