Baixe o app para aproveitar ainda mais
Prévia do material em texto
LINGUAGEM DE PROGRAMACAO AULA 1 1a Questão (Ref.: 201501258939) Fórum de Dúvidas (0) Saiba (0) (ENADE/2011) Eclipse, Netbeans, Jdeveloper são exemplos de ambientes integrados de desenvolvimento, chamados de IDE, que têm por objetivo facilitar o desenvolvimento de softwares, provendo maior produtividade e gerenciamento de projetos. A especificação JavaBeans foi criada para ser um padrão de desenvolvimento de componentes que possam ser facilmente usados por outros desenvolvedores em diferentes IDE. Com relação ao tema, analise as asserções a seguir: Seja para o Netbeans ou para o Eclipse, é possível adquirir componentes de terceiros que facilitem a implementação do seu projeto PORQUE como o código desses componentes está em linguagem intermediária, ou seja, independente da arquitetura de um computador real, só é necessário que a máquina virtual esteja instalada no computador onde o aplicativo será executado e a máquina virtual será a responsável pela interpretação do código para a linguagem de máquina do computador em execução. Acerca dessas asserções, assinale a alternativa correta. Tanto a primeira quanto a segunda asserções são proposições falsas A primeira asserção é uma proposição verdadeira, e a segunda, uma proposição falsa A primeira asserção é uma proposição falsa, e a segunda, uma proposição verdadeira As duas asserções são proposições verdadeiras, mas a segunda não é uma justificativa correta da primeira As duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta da primeira 2a Questão (Ref.: 201501054212) Fórum de Dúvidas (0) Saiba (0) Analisando as características da linguagem JAVA, marque a alternativa correspondente ao fato da linguagem poder ser implantada em diversas plataformas, como, por exemplo, Windows, Unix e Macintosh, sem que seja necessário modificar ou mesmo reconstruir a aplicação: Flexibilidade Facilidade de programação Portabilidade Escalabilidade Recompilação automática Gabarito Comentado 3a Questão (Ref.: 201501254244) Fórum de Dúvidas (0) Saiba (0) Seja o arquivo MeuPrograma.java, um arquivo escrito no bloco de notas, contendo código fonte em java. Marque a única alternativa CORRETA, para a descrição do processo de compilação e execução do programa. Com o comando javac MeuPrograma.java compila-se o arquivo e produz-se o arquivo MeuPrograma.class. Em seguida com o comando java MeuPrograma.class o bytecode é executado. Com o comando java MeuPrograma.java compila-se o arquivo e produz-se o arquivo MeuPrograma.class. Em seguida com o comando javac MeuPrograma o bytecode é executado. Com o comando javac MeuPrograma.java compila-se o arquivo e produz-se o arquivo MeuPrograma.class. Em seguida com o comando java MeuPrograma o bytecode é executado. Com o comando java MeuPrograma.javac compila-se o arquivo e produz-se o arquivo MeuPrograma.class. Em seguida com o comando java MeuPrograma.java o bytecode é executado. Com o comando javac MeuPrograma compila-se o arquivo e produz-se o arquivo MeuPrograma.class. Em seguida com o comando java MeuPrograma.java o bytecode é executado. Gabarito Comentado 4a Questão (Ref.: 201501053710) Fórum de Dúvidas (0) Saiba (0) Uma das razões pela portabilidade da tecnologia Java é a utilização da JVM (Java Virtual Machine). É correto dizer em relação a JVM: A JVM faz com que o código fonte e compilado seja para uma plataforma e sistema operacional específicos. Você precisa reescrever parte da sua aplicação toda vez que quiser mudar de sistema operacional. A JVM gera um código executável para cada sistema operacional. A JVM representa uma camada extra entre o sistema operacional e a aplicação, responsável por "traduzir" (entre outras funções) o que sua aplicação deseja fazer para as respectivas chamadas do sistema operacional no qual ela está rodando no momento, ou seja, sua aplicação roda sem nenhum envolvimento com o sistema operacional. Ela é usada para compilar um código Java. Gabarito Comentado 5a Questão (Ref.: 201501846334) Fórum de Dúvidas (0) Saiba (0) Analise as seguintes sentenças: I) A plataforma Java Enterprise Edition define um padrão para desenvolvimento de aplicações empresariais em múltiplas camadas, incluindo a plataforma Web. II) O Java Standard Edition aproveita as vantagens gerais da linguagem Java, mas roda somente no ambiente windows. III) O Java Runtime Environment possui tudo que é necessário para desenvolver programas em Java. Das sentenças acima, apenas: I e II são verdadeiras II é verdadeira III é verdadeira I e III são verdadeiras I é verdadeira 6a Questão (Ref.: 201501055876) Fórum de Dúvidas (0) Saiba (0) No âmbito da linguagem Java, considere: I. Edição é a criação do programa, que também é chamado de código Bytecode. II. Compilação é a geração de um código intermediário chamado fonte, que é um código independente de plataforma. III. Na interpretação, a máquina virtual Java ou JVM analisa e executa cada instrução do código Bytecode. IV. Na linguagem Java a interpretação ocorre apenas uma vez e a compilação ocorre a cada vez que o programa é executado. Está correto o que consta em IV, somente III, somente II e IV, somente III e IV, somente I, II, III e IV 7a Questão (Ref.: 201501846347) Fórum de Dúvidas (0) Saiba (0) A plataforma Java disponibiliza um interpretador que traduz, em tempo de execução, o código compilado para instruções nativas do processador, permitindo, dessa forma, que uma mesma aplicação seja executada em qualquer plataforma computacional que possua essa implementação. Esse interpretador trata-se do(a): J2SE. Java API. Java Virtual Machine. JavaBeans. JDK. 8a Questão (Ref.: 201501053705) Fórum de Dúvidas (0) Saiba (0) A tecnologia Java implementa um serviço conhecido como Garbage Collector - Coletor de Lixo. Sua função é: Permitir a instanciação do objeto na memória. Detectar os Hot Spots das aplicações. Possibilitar a criação de herança entre as classes. Determinar quando uma classe deve ser abstrata. Eliminar os objetos que não estão sendo usados se estiver com pouco espaço na memória. AULA 2 1a Questão (Ref.: 201501055877) Fórum de Dúvidas (1) Saiba (1) Em JAVA, os operadores lógicos 'E', 'OU' e 'NÃO' são representados respectivamente por: &, #, $ and, or, not &&, ||, ! *, +, ~ .and., .or., .not Gabarito Comentado 2a Questão (Ref.: 201501254269) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Seja o código a seguir: public class DemoVetor{ public static void main(String[] args) { int[] vet={10,20,34,56,60}; int i; for(i=0; i < vet.length;i++)<vet.length;i++) { System.out.println("vet["+i+"]=" + vet[i]); } System.out.print("i="+i); } }</vet.length;i++) Marque a alternativa que apresenta o valor da variável i, ao final do programa. i=2; i=4; i=1; i=3; i=5; Gabarito Comentado 3a Questão (Ref.: 201501793150) Fórum de Dúvidas (1) Saiba (1) Dado o trecho do programa em JAVA abaixo, identificar sua saída. Interger i = 1; while (i < 10){if (i%2==0){ i++; } else { i=i+2; } System.out.print(i+" "); } 3 5 7 9 11 1 2 3 4 5 6 7 8 9 11 2 4 6 8 1 3 5 7 9 11 1 2 4 6 8 4a Questão (Ref.: 201501054630) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Levando em consideração os conceitos sobre vetores, assinale a opção correta: o índice de um vetor sempre começa em 1 é possível executar a seguinte operação em um vetor de inteiros: x = vet[5] + vet[8]; o limite de um vetor em Java é de 255 posições um vetor somente pode armazenar tipos primitivos de dados declara-se um vetor: int c[5] = new int(); 5a Questão (Ref.: 201501835639) Fórum de Dúvidas (1) Saiba (1) Analise o código em Java abaixo e marque a opção correta onde representa o que será exibido após a execução do mesmo: public class Repeticao { public static void main(String arg[]){ int i; char letra = 'a'; for(i=1;i<=5;i++){ System.out.print(" "+letra); letra++; } } } a b c d e letra letra letra letra letra a b c d e f letra letra letra letra a b c d 6a Questão (Ref.: 201501054222) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Marque a alternativa que define uma matriz de números inteiros com 4 linhas e 5 colunas: int [][] matriz = new int [5,4]; int [][] matriz = new int [4,5]; int [][] matriz = new int [5][5]; int matriz [4][5]; int [][] matriz = new int [4][5]; 7a Questão (Ref.: 201501053726) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Em Java encontra-se várias formas de implementarmos uma estrutura de dados. Uma delas é a criação de matrizes unidimensionais (vetores) e multidimensionais. É correto afirmar sobre esta estrutura de dados: é usada somente para agrupar objetos. não é permitido o uso deste tipo de estrutura em Java, somente na Linguagem C. é usada para armazenar dados de tipos primitivos e também para armazenar objetos. é usada somente para armazenar tipos primitivos. é usada somente para agrupar dados de tipos primitivos, como int e double. 8a Questão (Ref.: 201501846351) Fórum de Dúvidas (1) Saiba (1) Ao se executar o trecho de código abaixo, escrito em Java, qual será o resultado obtido? int a = 1+3/2; System.out.println(a); 2 existe erro de compilação existe erro de execução: tipo inválido 2.5 1 AULA 3 1. Analise as afirmativas e marque a alternativa correta: i -A interface gráfica com o usuário (GUI) fornece a um programa um conjunto consistente de componentes intuitivos. ii-A utilização de GUI diminui o tempo de aprendizado de uma nova ferramenta. iii-As GUI são construídas a partir de objetos com o qual o usuário interage através dos dispositivos de entrada. Apenas a alternativa iii está correta. Apenas a alternativa ii está correta. Todas as alternativas estão corretas. Todas as alternativas estão erradas. Apenas a alternativa i está correta. 2. As interfaces gráficas com o usuário (GUI - Graphical User Interface) são construídas a partir de componentes GUI, que são objetos com o qual o usuário interage através dos dispositivos de entrada, ou seja, o mouse, o teclado, etc. Em Java, as classes necessárias para criação de componentes gráficos, bem como para fornecer-lhes funcionalidade, estão agrupadas em dois grandes pacotes: java.util e java.lang javax.swing e java.util java.awt e javax.swing java.awt e java.lang java.lang e javax.swing Gabarito Comentado 3. Para criar janelas gráficas no Java é preciso utilizar uma das bibliotecas gráficas disponíveis. Os objetos gráficos no Java são criados como objetos normais a partir das classes definidas na biblioteca gráfica Swing. Para criar um elemento gráfico "caixa de texto" devemos instanciar: JBox caixa = "Caixa de Texto" JFrameText texto = new Text() JLabel("caixa de texto") JTextField caixa = new JTextField() JComboText combo = new "Caixa de Texto" Gabarito Comentado Gabarito Comentado 4. Analise as afirmativas e marque a alternativa correta: i-Os componentes Java puros oferecem um maior nível de portabilidade e flexibilidade e são do pacote AWT. ii-Os componentes Swing fornecem funcionalidade e aparência uniforme em todas as plataforma, sendo denominada de aparência de metal. iii-Os componentes AWT fornecem funcionalidade e aparência uniforme em todas as plataforma, sendo denominada de aparência de metal. Todas as alternativas estão corretas. Todas as alternativas estão erradas. Apenas a alternativa ii está correta. Apenas a alternativa i está correta. Apenas a alternativa iii está correta. 5. Para construirmos uma interface gráfica em JAVA, adicionamos componentes sobre a área da janela. Por essa razão, a área da janela é um container, ou seja, um elemento capaz de armazenar uma lista de componentes. Existem uma infinidade de funcionalidades disponíveis nas bibliotecas de classes Java, destinadas a prover a comunicação homem-máquina gráfica. São características de um JPanel, EXCETO: A classe JPanel não tem painel de conteúdo como JFrames, assim, os elementos devem ser diretamente adicionados ao objeto painel São criados com a classe JPanel, que é derivada da classe Container São áreas que comportam outros componentes, inclusive outros painéis São elementos que fazem a intermediação entre um container e os demais GUI anexados. O JPanel, assim como o JFrame são derivados do pacote java.util.awt Gabarito Comentado Gabarito Comentado 6. A criação de interfaces gráficas Swing consiste basicamente em instanciar objetos. Componentes gráficos, tais como campo texto e botões, são elementos que o usuário manipula com o mouse ou com o teclado. Das afirmativas abaixo, indique aquela que NÃO REPRESENTA uma característica do componente JComboBox Cada objeto inserido no JComboBox é representado visualmente pela String retornada pelo método toString(). Para instanciar um componente utilizamos a sintaxe JComboBox combo = new JComboBox(); Um objeto da classe JComboBox é um campo texto na forma de várias linhas nas quais textos podem ser digitados pelo usuário através do teclado. É um componente visual que possibilita a manipulação de coleções de objetos permitindo ao usuário selecionar apenas um objeto da coleção Pertence ao pacote javax.swing Gabarito Comentado 7. A interface gráfica com o usuário (GUI - Graphical User Interface) fornece a um programa um conjunto consistente de componentes intuitivos, familiarizando o usuário com as diversas funções e diminuindo o tempo de aprendizado da nova ferramenta. São características do componente Swing, EXCETO: Conhecidos como componentes Java puros A maioria de seus componentes é escrita, manipulada e exibida completamente em Java Os nomes recebem um "J" no seu início: JLabel, JButton, JFrame, JPanel, etc São extensões do pacote java.util.swing Possuiportabilidade, em relação ao componente AWT Gabarito Comentado Gabarito Comentado 8. O método setDefaultCloseOperation()pode ser executado com algumas constantes como argumento, marque a alternativa em que a constante usada destrói a janela. DISPOSE_ON_CLOSE EXIT_ON_CLOSE DO_NOTHING_ON_CLOSE DESTROI_ON_CLOSE HIDE_ON_CLOSE AULA 4 1. (CESPE - 2013 - TRE-MS) Assinale a opção correta quanto à abordagem conceitual de abstração sob o paradigma de programação orientada a objetos. Abstração é a habilidade de se concentrar nos aspectos essenciais de um contexto qualquer, ignorando características menos importantes ou acidentais. Em modelagem orientada a objetos, uma classe é uma abstração de entidades existentes no domínio do sistema de software. Abstração é uma linguagem declarativa que permite acesso à base de dados mediante a utilização da teoria dos conjuntos e da álgebra relacional como fundamento de seu funcionamento. As abstrações, idealmente, caracterizam-se por não serem grandes demais em comparação aos módulos, pois senão elas se tornam multifuncionais e de difícil compreensão. Como consequência, a abstração deve ser implementada apenas no nível de estruturas de dados necessários para se atingir o objetivo pretendido. Abstração é um conceito segundo o qual o sistema ou software é dividido em partes distintas. Compõe o ferramental necessário para um programa mais legível com uma melhor manutenção e melhor desempenho por meio da programação orientada a objetos. Abstração consiste em uma linguagem puramente lógica. A motivação para isso veio em parte da vontade de se reconciliar o uso da lógica como uma linguagem declarativa de representação do conhecimento com a representação procedimental do conhecimento. 2. O encapsulamento é um conceito da orientação a objetos que: esconde detalhes de implementação e garante maior segurança aos atributos da classe permite instanciar objetos aumenta velocidade da máquina virtual java permite o acesso irrestrito aos atributos da classe exibe todos detalhes de implementação 3. Em Java, para alterar a visibilidade do elemento utiliza-se, entre outros, o modificador de acesso: volatile. protected. abstract. static. transient. 4. O código é executado normalmente, pois c não é uma instancia da mesma classe que o atributo Será gerado um erro de compilação, pois o atributo é private. O objeto c não pode ser instanciado, pois não há construtor na classe. O código é executado normalmente, pois c é uma instancia da mesma classe que o atributo Será gerado erro de compilação pois há erro de sintaxe em: c.cor="Prata"; Gabarito Comentado Gabarito Comentado 5. Analise o projeto abaixo composto pela classe Pessoa e a classe de teste, e indique a alternativa que indica o que está errado, verificando a classe Pessoa e na sequência a classe TestaPessoa. public class Pessoa{ String nome; int idade; String telefone; public void exibirDados(){ System.out.println("Nome:"+nome); System.out.println("Idade:" + idade+ " anos"); System.out.println("Telefone:"+ telefone); } } public class TestaPessoa{ public static void main (String [] args){ exibirDados(); } } faltou criar o objeto Pessoa na classe TestaPessoa, para depois poder chamar seu método através da variável de referência indicada. Exemplo: Pessoa p = new Pessoa(); e a linha exibirDados() seria substituída pela linha p.exibirDados(). não há erros nos códigos acima. faltou criar o objeto na classe Pessoa. o erro está no método exibirDados() da classe Pessoa, ele não pode ser void. faltou o método main na classe Pessoa. Gabarito Comentado 6. A orientação a objetos é uma forma abstrata de pensar um problema utilizando-se conceitos do mundo real e não, apenas, conceitos computacionais. Nessa perspectiva, a adoção do paradigma orientado a objetos implica necessariamente que: os usuários utilizem as aplicações de forma mais simples a computação seja acionada por troca de mensagens entre objetos os objetos sejam implementados de maneira eficiente e simples os programadores de aplicações sejam mais especializados os sistemas sejam encapsulados por outros sistemas Gabarito Comentado 7. Assinale a opção que não faz parte do conceito de orientação a objetos. herança procedimento método atributo classe Gabarito Comentado 8. Mecanismo utilizado em orientação a objetos para obter segurança, modularidade e autonomia dos objetos. Este conceito refere-se a(o): Herança Múltipla Herança Encapsulamento Condicional Método AULA 5 1. Todo método construtor de uma subclasse precisa também chamar um construtor da superclasse, caso existam campos de instância nesta superclasse. Para tanto, usa-se o comando: erase delete open extends super 2. Numa hierarquia de classes, onde a classe pai apresenta um método concreto M() que será herdado pela classe filha, mas deseja-se alterar a funcionalidade do método M() para as instâncias da classe filha, mantendo-se a mesma assinatura para o métodos em ambas as classes. Isto pode ser feito usando-se: herança de método. método abstrato. encapsulamento do método. sobrecarga de método. sobrescrita de método. 3. (ENADE/2008) Uma pizzaria fez uma ampliação de suas instalações e o gerente aproveitou para melhorar o sistema informatizado, que era limitado e não atendia a todas as funções necessárias. O gerente, então, contratou uma empresa para ampliar o software. No desenvolvimento do novo sistema, a empresa aproveitou partes do sistema antigo e estendeu os componentes de maneira a usar código validado, acrescentando as novas funções solicitadas. Que conceito de orientação a objetos está descrito na situação hipotética acima? Abstração Herança Sobrecarga Sobreposição Polimorfismo Gabarito Comentado 4. Com relação a uma classe abstrata é correto afirmar que: Esta não pode ser instanciada. Esta só pode ser instanciada se o objeto também for abstrato. Esta não possui métodos nem atributos abstratos Esta não possui métodos. Esta só possui métodos e atributos abstratos Gabarito Comentado Gabarito Comentado 5. Analise o código Java abaixo, sabendo-se que as classes encontram-se no mesmo pacote, assinale a alternativa correta: class A { private int atrA; } class B extends A { protected int atrB; } class C extends B, A{ private int atrC; }A classe B herda as características de A, mas não tem acesso direto ao atributo de A A classe B herda as características de A e pode acessar diretamente o atributo de A A classe C está herdando as características das classes B e A, assumindo a característica de polimorfismo A classe B possui atributo protegido, sendo assim, qualquer classe que herde não pode acessar diretamente o atributo A classe C, por herdar as características das classes A e B, pode acessar diretamente os atributos de A e B 6. Marque a alternativa que representa a palavra reservada que indica a execução do construtor de superclasses em uma generalização: super extends new generation implements 7. A palavra reservada EXTENDS implementa qual o conceito? Associação Herança Portabilidade Visibilidade Polimorfismo 8. Java permite trabalharmos com várias classes. Muitas vezes, classes diferentes tem características comuns, então, ao invés de criarmos uma nova classe com todas essas características usamos as características de um objeto ou classe já existente. Esse conceito se refere à: Exceção Classes Abstratas Herança Polimorfismo Interface AULA 6 1. Em Java temos a possibilidade de proteger os membros de uma classe. Chamamos este processo de: sobrecarga. threads. encapsulamento. polimorfismo. herança. Gabarito Comentado 2. (ENADE/2011) A programação orientada a objeto não é apenas uma forma de programar, é também um jeito de pensar em um problema utilizando conceitos do mundo real e, não somente conceitos computacionais. Considerando os conceitos da programação orientada a objetos, analise as afirmações abaixo: I. O objeto tem determinadas propriedades que o caracterizam e que são armazenadas no próprio objeto. As propriedades de um objeto são chamadas de instâncias. II. As mensagens são informações enviadas ao objeto para que ele se comporte de uma determinada maneira. Um programa orientado a objetos em execução consiste em envios, interpretações e respostas às mensagens. São os métodos, os procedimentos residentes nos objetos, que determinam como eles irão atuar ao receber as mensagens. III. A herança é um mecanismo para o compartilhamento de métodos e atributos entre classes e subclasses, permitindo a criação de novas classes através da programação das diferenças entre a nova classe e a classe-pai. IV. O encapsulamento é um mecanismo que permite o acesso aos dados de um objeto somente através dos métodos desse. Nenhuma outra parte do programa pode operar sobre os dados do objeto. A comunicação entre os objetos é feita apenas através de troca de mensagens. É correto apenas o que afirma em: I e III I e II I, II e IV II, III e IV III e IV 3. Tei Ping, aluna de programação, escreveu uma classe em Java, aqui parcialmente apresentada, que feriu um importante conceito de Orientação a Objetos. Marque a opção que indica o conceito usado incorretamente pela estudante. public class Aluno { public String matricula, nome; public float CR; public void imprimirDados() { System.out.println("Matricula = " + matricula + " Nome = " + nome + " CR = " + CR); } } Polimorfismo Abstração Instância Encapsulamento Herança 4. Em Java pode-se utilizar diferentes tipos de modificadores de acesso para seus atributos e métodos, dependendo da necessidade da aplicação que está sendo desenvolvida. É correto afirmar sobre os modificadores de acesso usados na declaração de atributos: O modificador de acesso final permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso public torna o atributo visível pela própria classe ou suas subclasses, e o modificador de acesso private permite que só a classe manipule seus atributos. O modificador de acesso protected permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso public torna o atributo visível pela própria classe ou suas subclasses, e o modificador de acesso private permite que só a classe manipule seus atributos. O modificador de acesso public permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso protected torna o atributo vísivel pela própria classe ou suas subclasses, e o modificador de acesso private permite que só a classe manipule seus atributos. O modificador de acesso private permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso public torna o atributo visível pela própria classe ou suas subclasses, e o modificador de acesso protected permite que só a classe manipule seus atributos. O modificador de acesso protected permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso public torna o atributo visível pela própria classe ou suas subclasses, e o modificador de acesso final permite que só a classe manipule seus atributos. Gabarito Comentado 5. Analisando o código abaixo, assinale a alternativa que indique a explicação correta do funcionamento dos métodos setEstado(boolean estado) e getEstado(): public class Lampada { private boolean estado; //ligado ou não public Lampada(){ this.estado = false; } public void setEstado(boolean estado){ this.estado = estado; } public boolean getEstado(){ return this.estado; } } O método setEstado para definir um valor para o atributo estado deveria ser do tipo boolean, como o método getEstado. O método getEstado está definindo um valor para o estado da lâmpada ; o método setEstado está retornando o estado atual da lâmpada. O método getEstado para definir um valor para o atributo estado deveria ser do tipo void, como o método setEstado. O método setEstado está definindo um valor para o estado da lâmpada ; o método getEstado está retornando o estado atual da lâmpada . Os dois métodos estão errados, pois não estão atualizando o atributo estado da classe. Gabarito Comentado 6. Analise o código abaixo: public class Notebook { private String marca; private String modelo; public Notebook(String marca, String modelo) { this.marca=marca; this.modelo=modelo; } } Podemos afirmar sobre esta classe: a classe Notebook possui dois atributos encapsulados e privados e apenas o método construtor os atributos estão públicos possui o método main - principal o método construtor não está implementado possui 5 atributos públicos 7. Tudo que um objeto é capaz de fazer e todas as características que ele irá definir estão definidos em sua classe. Isto significa que toda a existência do objeto está restrita aos domínios da classe. Em outras palavras, o ato de esconder do usuário informações que não são de seu interesse ou por segurança dos dados, é chamado de: Herança Sobrecarga Instância Polimorfismo Encapsulamento 8. As ações ou comportamento dosobjetos são chamadas na orientação a objeto de métodos. Assim, um método é uma função, um serviço ou ação fornecido pelo objeto. O método responsável por buscar os valores armazenados nos atributos dos objetos instanciados é chamado de: Método set Método void Método construtor Método get Método main AULA 7 1. class B extends A { int m1() { return a + b + c + d + e; } } public class A { static int a; public int b; int c; protected int d; private int e; } A classe B acima encontra-se no mesmo pacote que a classe A. O método m1 apresenta erro de compilação porque a seguinte variável não pode ser acessada diretamente: c d b a e Gabarito Comentado 2. As interfaces gráficas com o usuário (GUI - Graphical User Interface) são construídas a partir de componentes GUI, que são objetos com o qual o usuário interage através dos dispositivos de entrada, ou seja, o mouse, o teclado, etc. Em Java, as classes necessárias para criação de componentes gráficos, bem como para fornecer-lhes funcionalidade, estão agrupadas em dois grandes pacotes: java.lang e javax.swing javax.swing e java.util java.awt e javax.swing java.awt e java.lang java.util e java.lang 3. O componente do pacote javax.swing que permite ao usuário inserir dados, e também pode ser utilizado para exibir texto editável ou não editável é o: JLabelText JListBox JComboBox JTextBox JTextField Gabarito Comentado 4. Os componentes gráficos mais comuns estão frequentemente prontos e presentes no pacote Swing. Para montar as telas que são específicas de um projeto, é necessário compor alguns componentes mais básicos, como JFrames, JPanels, JButtons, etc. Criar um componente do Swing é bastante simples, o comando para criar um botão é: JButton botao = new JFrame("sair"); JButton botao = new JButton("sair"); JButton.botao = new JButton("sair"); JFrame botao = new JButton("sair"); JFrame.botao = new.JButton("sair"); Gabarito Comentado 5. Considere o seguinte código-fonte em linguagem Java: import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; public class Q4Class extends JFrame{ private JButton b; public static void main(String[] args) { JFrame f = new Q4Class (); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setSize(300, 200); f.setVisible(true); } public Q4Class (){ this.getContentPane().add(b = (new JButton("Clique aqui"))); b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ ((JButton)e.getSource()).setText("OK"); } }); } } o símbolo b não poderia ser referenciado dentro do método main porque este não faz parte da classe Q4Class o código não executará, com erro no construtor o programa não termina quando a janela é fechada porque não foi adicionado um WindowListener ao objeto referenciado por f no método main a chamada do método getSource() retorna uma referência da classe Object para o objeto ouvinte do evento de clique de botão, e essa referência é convertida para o tipo JButton para ser possível mudar o texto exibido no botão o argumento da chamada do método addActionListener para o objeto referenciado por b é uma classe interna anônima 6. Considere uma classe ContaBancária e suas duas subclasses ContaCorrente e ContaPoupança, cada uma das três com o método AplicarJuros. A redefinição do método AplicarJuros nas duas subclasses, cada uma com detalhes de implementação diferentes com a mesma interface, caracteriza o princípio denominado na orientação a objetos como: Herança Encapsulamento Polimorfismo Sobrecarga Abstração Gabarito Comentado 7. Generalização é o mecanismo pelo qual uma classe (sub-classe) pode estender outra classe (super-classe), aproveitando seus comportamentos (métodos) e variáveis possíveis(atributos), também é conhecido como: (Fonte: adaptado IBM) Abstração Herança Agregação Associação Classe Abstrata Gabarito Comentado 8. Dentro do paradigma de programação orientada a objetos (POO), há um mecanismo pelo qual uma classe pode estender outra classe, aproveitando seus métodos e atributos. Assinale a alternativa que apresenta o nome desse mecanismo. polimorfismo. mensagem. encapsulamento. herança. subclasse. AULA 8 1. A JOptionPane é a classe mais simples do Swing, esta classe mostra janelinhas de mensagens, confirmação e erros, entre outras. Marque a alternativa que apresenta o método mais apropriado de se mostrar uma mensagem para o usuário. JOptionPane.showInputDialog(null, "Minha mensagem!"); JOptionPane.showQuestionMessage(null, "Minha mensagem!"); JOptionPane.showMessageDialog(null, "Minha mensagem!"); JOptionPane.showFileChooser(null, "Minha mensagem!"); JOptionPane.showConfirmDialog(null, "Minha mensagem!"); Gabarito Comentado 2. Os componentes Swing podem gerar vários tipos de eventos diferentes. Quando um evento ocorre, o gerenciador de janelas cria um evento e passa para um tratador de eventos definido pelo programador. O fragmento de código responsável por implementar métodos dentro da interface ActionListener é: public void itemStateChanged(ActionEvent e) public void itemPerformed(ActionEvent e) public void actionPerformed(ActionEvent e) public void actionListenet(ActionEvent e) public void actionStateChanged(ActionEvent e) Gabarito Comentado 3. Supondo uma aplicação que utiliza um botão (JButton) com tratamento de eventos implementado dentro da própria classe, sempre que este for pressionado, irá percorrer a sua lista interna de listeners, chamando para cada um, o método actionPerformed; Qual o nome do evento gerado pelo botão quando pressionado. ActionPerformed ActionListener getActionCommand ActionEvent addActionListener Gabarito Comentado 4. Assinale a alternativa que completa corretamente as lacunas da afirmação a seguir: "Um diálogo de entrada capaz de receber entrada do usuário é exibido com o método __________ da classe _________ ." showMessageBox/JOptionBox showMessageDialog/JOptionPane showInputDialog/JOptionPane. showInputBox/JOptionBox showMessage/JOption Gabarito Comentado 5. Ações como fechar janela ou controlar entrada de texto necessitam de tratamento de eventos. Por este motivo as interfaces gráficas criadas em Java necessitam de tratamento para suas funcionalidades. Analise as seguintes afirmativas: I- Em uma interface gráfica as acões que podem ser realizadas pelo usuário precisam ser mapeadascomo eventos. II- Os eventos, no Java, são objetos e provêm de classes, possuindo métodos e atributos. III- Cada tipo de componente gráfico suporta um determinado conjunto de eventos. IV- Os eventos são categorizados por recurso (teclado e mouse) e por componente (janela, lista, combo, campo de texto etc). Marque a alternativa CORRETA: Apenas as afirmativas I e IV. Apenas as afirmativas II, III e IV. Apenas a alternativa I. Apenas as afirmativas I, II e III. Todas as afirmativas são corretas. Gabarito Comentado 6. Na linguagem Java, quase todos os componentes propagam eventos. Estes eventos devem ser tratados em algum ponto do código da aplicação. Os eventos nunca são tratados no próprio componente. Para ligar o código do tratamento de eventos ao componente existem, no Java, um conjunto de interfaces chamadas: FlowLayout Container Interface Action Listener Gabarito Comentado 7. Recentemente contratado por uma empresa desenvolvimento que trabalha somente com a linguagem Java, um programador C++ está se adaptando a nova linguagem. Apesar de possuir vasta experiência com programação orientada a objetos, este ainda sente dificuldades em alguns comandos. Como exemplo, em um programa, é necessária uma tela de confirmação. Qual das opções reproduz corretamente à tela abaixo: JOptionPane.showMessageDialog(null, "Deseja salvar?","Salvar...", JOptionPane.YES_NO_OPTION); JOptionPane.showMessageDialog("Deseja salvar?","Salvar...", JOptionPane.YES_NO_OPTION); JOptionPane.showMessageDialog(null, "Deseja salvar?","Salvar...", JOptionPane.QUESTION_MESSAGE); JOptionPane.showMessageDialog(null, "Deseja salvar?","Salvar...",YES_NO_OPTION); JOptionPane.showConfirmDialog(null, "Deseja salvar?","Salvar...", JOptionPane.YES_NO_OPTION); Gabarito Comentado 8. Um estagiário de programação foi incumbido de verificar uma linha de código de um programa que apresentava uma tela de forma indesejada. JOptionPane.showInputDialog(null," "," ",JOptionPane.QUESTION_MESSAGE); Para corrigir é necessário conhecer o que se espera, respectivamente, nos campos entre aspas. Assinale a alternativa que define respectivamente. texto da barra de título e o texto interno do campo texto. texto da barra de título e o texto interno da caixa de leitura. texto interno da caixa de leitura e o texto do campo texto. símbolo do tipo de mensagem e o tamanho a cor da caixa de texto. texto interno da caixa de leitura e o texto da barra de título. AULA 9 1. Assinale a alternativa que completa corretamente a lacuna da afirmação a seguir: "No modelo de terminação de tratamento de exceção, depois de uma exceção ser tratada o programa não retorna ao ponto de lançamento porque o __________ expirou." método getMessage método main bloco try bloco cacth bolco finally Gabarito Comentado 2. O Java fornece um mecanismo sofisticado para manipulação de erros que produz código eficiente e organizado, a isto chama-se Tratamento de Exceção.Com esse mecanismo os programadores detectam erros facilmente, sem precisar escrever código especial para testar os valores retornados. Sejam as seguintes sentenças referentes ao processo de Exceção em Java: I. Você deve colocar o bloco de código a ser protegido dentro de uma instrução try. II. Se houver algum erro em tempo de execução, o código será desviado para a instrução catch. III. Caso haja mais de uma exceção que deva ser verificada, podemos utilizar vários catch's diferentes, obedecendo a regra de que as exceções mais específicas devem vir primeiro. IV. O bloco do finally é sempre executado, com ou sem exceção. Marque a alternativa correta: Apenas as sentenças I, III e IV estão corretas Todas as sentenças estão corretas. Apenas a sentença I está correta. Apenas as sentenças II e III estão corretas Apenas as sentenças I,II e III estão corretas. 3. Analise as seguintes afirmações em relação ao uso de Exceções no Java. I. O tratamento de exceção é o mecanismo responsável pelo tratamento da ocorrência de condições que alteram o fluxo normal da execução de programas de computadores II. Sempre que um método de alguma classe é passível de causar algum erro, então, podemos usar o método de tentativa - o try III. Finally é o trecho de código final. Tem como função básica sempre executar seu bloco de dados mesmo que uma exceção seja lançada. Em relação às sentenças supracitadas, pode-se afirmar que: I e II são verdadeiras II e III são verdadeiras Apenas a I é verdadeira Apenas a III é verdadeira Todas são verdadeiras Gabarito Comentado 4. Uma exceção é um objeto gerado para indicar a ocorrência de algum tipo de condição excepcional durante a execução de um método qualquer. Apenas objetos de classes pertencentes à hierarquia de classes de exceção do Java poderão ser gerados, propagados e capturados. A superclasse dessa hierarquia, que por sua vez é uma subclasse de Object, é: VirtualMachineErros Error Exception RunTimeException Throwable Gabarito Comentado Gabarito Comentado 5. O tratamento de exceção em Java é implementado com a utilização dos blocos try(), catch() e opcionalmente o bloco finally. Sabe-se que o bloco finally não executará se o aplicativo fechar antes de um bloco try chamando o método System.exit, pois este método encerra imediatamente um aplicativo. Assim marque a única afirmação CORRETA com relação a aplicação dos blocos que implementam a exceção em Java. O Java permite colocar qualquer código entre um bloco try e seus blocos catch correspondentes. Se o programa capturar a exceção em dos blocos catch, o programa processa primeiramente o bloco finally e só então processa o tratamento da exceção. O java garante que o um bloco finally executará se um bloco try fechar utilizando uma instrução return, break ou continue. No Java se permite capturar o mesmo tipo de exceção em dois blocos catch diferentes em uma única instrução catch. No Java é permitido colocar uma lista de parâmetros de exceção separados por vírgulas para um mesmo bloco catch. 6. Baseando-se no trecho de código abaixo, podemos afirmar que: public class Avaliacao { public static void main(String[] args) { String a = "3"; int saida = 0; try { int i = Integer.parseInt(a); saida = i; } catch (Exception e) { saida = -1; } finally { saida = 10; } System.out.println(saida); } } Não compilará; A saída no console será: "13" A saída no console será: "3" A saída no console será: "10" A saída no console será: "-1" Gabarito Comentado 7. Marque a afirmativa correta sobre o tratamento de exceções em Java. Tratamento de exceção não é utilizado quando os erros ocorrem. O tratamento de exceção é composto apenas pelo comando try.O tratamento de exceção só captura erros de compilação. Tratamento de exceção não é um recurso útil e facilmente substituído pelos comandos if e else. Tratamento de exceção é um recurso da linguagem de programação Java utilizado para capturar os erros de execução. 8. O Java fornece um mecanismo sofisticado para manipulação de erros que produz código eficiente e organizado, a isto chama-se Tratamento de Exceção.Com esse mecanismo os programadores detectam erros facilmente, sem precisar escrever código especial para testar os valores retornados. Sejam as seguintes sentenças referentes ao processo de Exceção em Java: I. Você deve colocar o bloco de código a ser protegido dentro de uma instrução try. II. Se houver algum erro em tempo de execução, o código será desviado para a instrução catch. III. Caso haja mais de uma exceção que deva ser verificada, podemos utilizar vários catch'sdiferentes, obedecendo a regra de que as exceções mais específicas devem vir primeiro. IV. O bloco do finally é sempre executado, com ou sem exceção. Marque a alternativa correta: Todas as sentenças estão corretas. Apenas as sentenças I,II e III estão corretas. Apenas a sentença I está correta. Apenas as sentenças I, III e IV estão corretas. Apenas as sentenças II e III estão corretas AULA 10 1. Pode-se dizer sobre exceções que: Marque a alternativa correta. são as principais classes de exceções Java: NullPointerException, offExcecpion e onException o tratamento de exceção deve ser feito em todos os casos em que haja probabilidade de ocorrer um erro. a estrutura de uma exceção é o bloco catch, que resume-se em tentar executar o código, bloco try, que fará todo o tratamento em caso de algum erro é obrigatório utilizar o comando finally em todos tratamentos de exceção throws é o comando responsável pela implementação de uma exceção Gabarito Comentado 2. Dado o trecho de código escrito em Java abaixo, podemos afirmar que: public class Avaliacao{ public void metodo() throws Exception { throw new Exception(); } public static void main(String args[]) { int x, y, z; x = y = z = 1; try { new Avaliacao().metodo(); x++; } catch (Exception e) { y++; } finally { z++; new Avaliacao().metodo(); } System.out.println(x + "," + y + "," + z); } } Imprime no console: 1,1,3. Imprime no console: 1,1,2. Imprime no console: 2,2,3. Imprime no console: 2,2,1. O programa não compila. Gabarito Comentado 3. Eventos representam uma ação que ocorreu num componente GUI. Dentre os mais comuns no Swing, qual das opções abaixo NÃO é um evento de ação? Digitar um texto Ativar um RadioButton Clicar em menus Cliques em botões Ativar e desativar JCheckbox Gabarito Comentado Gabarito Comentado 4. Por qual motivo é utilizado o bloco try...catch. Fazer depuração de códigos. Auditar código. Realizar tentativas de execução. Polimorfismo. Tratar e recuperar erros. Gabarito Comentado 5. De acordo com a afirmação abaixo (Fonte: adaptado IBM): "permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam, assim, um mesmo método pode apresentar várias formas, de acordo com seu contexto." herança polimorfismo classe abstrata interface agregação Gabarito Comentado 6. Analise o seguinte trecho de código. Qual o resultado de tentar compilá-lo e executá-lo? class Avaliacao { public static void main(String[] args) { System.out.println("Inicio do main!!"); try { System.out.println("Inicio do try!"); int[] array = new int[3]; for (int i = 0; i < 4; ++i) { array[i] = i; System.out.println(i); } System.out.println("Fim do try!"); } catch (Exception e) { System.out.println("Exceçao: " + e); } System.out.println("Fim do main!"); } } O código não compila. O código compila, mas tem sua execução interrompida devido a ocorrência de uma ArrayIndexOutOfBoundsException. O código não compila por causa de um erro no array. O código compila ocorre uma exceção ArrayIndexOutOfBoundsException, contudo está é tratada e o programa segue ate imprimir: "Fim do main!". O código compila execução sem a existência de Exceções. SIMULADO 1a Questão (Ref.: 201501720891) Acerto: 1,0 / 1,0 Para programar em Java, não é necessário ter programado antes. Porém, ficaria mais fácil se tiver conhecimento em linguagem de programação, porque Java é totalmente estruturada em objetos. Para começar a programar será necessário fazer o download: JRE JSP NetBeans Eclipse JDK 2a Questão (Ref.: 201501053704) Acerto: 1,0 / 1,0 Para que possamos desenvolver aplicações básicas em Java basta termos instalado em nosso computador a(s) seguinte(s) tecnologias: (assinale somente uma alternativa) Somente a Java Virutal Machine-JVM. A Java Runtime Environment (JRE), ambiente de execução Java, formado pela JVM e bibliotecas,e do Java SE (Standard Edition) - JDK. O JDK e o Java Standard Edition. Somente o Java Standard Edition. Somente o Java Runtime Enviroment-JRE. Gabarito Comentado. 3a Questão (Ref.: 201501121050) Acerto: 1,0 / 1,0 Associe as duas colunas relacionando as instruções de seleção e de repetição com suas respectivas definições e, a seguir, assinale a sequência correta. Instruções de seleção e de repetição: (1) if (2) if...else (3) while (4) switch Definições: ( ) Instrução de seleção múltipla: seleciona ou ignora um grupo de ações entre vários grupos. ( ) Instrução de seleção única: seleciona ou ignora um grupo de ações. ( ) Instrução de repetição que executa um grupo de ações zero ou mais vezes, enquanto uma condição de continuação do loop for verdadeira. ( ) Instrução de seleção dupla: executa um grupo de ações entre dois grupos de ações. 4 - 1 - 3 - 2 3 - 2 - 1 - 4 2 - 3 - 1 - 4 2 - 1 - 4 - 3 1 - 4 - 3 - 2 4a Questão (Ref.: 201501055878) Acerto: 1,0 / 1,0 A alternativa que representa todos os tipos de dados primitivos em Java é byte, short, int, long, float, double, String e Date char, boolean, byte, short, int, long, float e double short, boolean, int, long, float, double e String char, boolean, byte, short, int, long, float, double e String char, boolean, byte, short, int, long, float, double, String e Date Gabarito Comentado. 5a Questão (Ref.: 201501722189) Acerto: 1,0 / 1,0 Analise as afirmativas e marque a alternativa correta: i -A interface gráfica com o usuário (GUI) fornece a um programa um conjunto consistente de componentes intuitivos. ii-A utilização de GUI diminui o tempo de aprendizado de uma nova ferramenta. iii-As GUI são construídas a partir de objetos com o qual o usuário interage através dos dispositivos de entrada. Todas as alternativas estão erradas. Apenas a alternativa i está correta. Apenas a alternativa ii está correta.Apenas a alternativa iii está correta. Todas as alternativas estão corretas. 6a Questão (Ref.: 201501722195) Acerto: 1,0 / 1,0 O método setDefaultCloseOperation()pode ser executado com algumas constantes como argumento, marque a alternativa em que a constante usada destrói a janela. DESTROI_ON_CLOSE DO_NOTHING_ON_CLOSE DISPOSE_ON_CLOSE EXIT_ON_CLOSE HIDE_ON_CLOSE Gabarito Comentado. 7a Questão (Ref.: 201501620168) Acerto: 0,0 / 1,0 Seja a classe: public class TV { public boolean estadoTV; public TV(boolean estadoTV){this.estadoTV=estadoTV;) public void ligaTV() {estadoTV=true;} public void desligaTV( ) {estadoTV=false;} } Marque a alternativa que apresenta uma forma correta de se criar uma instância para esta classe: TV m=new TV(); TV m.new TV(true ); TV m.new TV; TV m.new TV(); TV m=newTV(false ); 8a Questão (Ref.: 201501299050) Acerto: 1,0 / 1,0 Para realizar uma tarefa em um programa é necessário um método. Os métodos descrevem os mecanismos que realmente realizam suas tarefas. Os métodos ocultam de seus usuários as tarefas complexas que ele realiza, por exemplo o pedal acelerador de um carro oculta dos motoristas os complexos mecanismos que fazem o carro andar mais rápido. Em Java primeiro criamos uma unidade de programa chamada classe para abrigar um método, assim como os desenhos de engenharia de um carro abrigam o projeto de um pedal acelerador. Em uma classe você fornece um ou mais métodos que são projetados para realizar as tarefas da classe. Portanto marque a alternativa CORRETA referente aos métodos de uma classe. No momento em que um método é chamado , seus argumentos são atribuídos a seus parâmetros. Então o corpo do método utiliza as variáveis de parâmetro para acessar os valores de argumento. Nem todo parâmetro precisa especificar necessariamente o tipo ou o identificador. Um método pode especificar múltiplos parâmetros, separando cada parâmetro do seguinte por um ponto e vírgula. Em geral você pode chamar um método de uma classe, mesmo sem ter criado um objeto desta classe. O número de argumentos na chamada de um método não precisa necessariamente corresponder ao número de parâmetros definidos no método. Gabarito Comentado. 9a Questão (Ref.: 201501299065) Acerto: 1,0 / 1,0 Herança é a forma de reutilização de software na qual uma nova classe é criada, absorvendo membros de uma classe existente e aprimorada com capacidades novas ou modificadas. Portanto uma subclasse é mais específica que sua super classe, então pode-se dizer que: que a superclasse sempre adiciona novas caracteristicas em vistas as caracteristicas apresentadas pela sua subclasse. que a subclasse nunca adiciona seus prórios campos e métodos. que a superclasse representa um grupo mais especializado de objetos. que a subclasse representa um grupo mais especializado de objetos. que a subclasse possuirá caracteristicas mais restritas que as de sua superclasse. Gabarito Comentado. 10a Questão (Ref.: 201501664301) Acerto: 1,0 / 1,0 Considerando o esquema de herança existente na metodologia de Orientação a Objeto, em uma hierarquia de classes em Java, temos: I. Os construtores da superclasse não são herdados pelas instâncias de uma subclasse. II. Todo método construtor de uma superclasse precisa também chamar um construtor da subclasse. III. O comando super( ), chamada ao construtor da superclasse, deve ser declarado obrigatoriamente na primeira linha do construtor da subclasse. Marque a alternativa CORRETA: Apenas as sentenças I e II são verdadeiras. Todas as sentenças são verdadeiras. Apenas as sentenças II e III são verdadeiras. Apenas as a sentença I e III são verdadeiras. Nenhuma sentença é verdadeira.
Compartilhar