Baixe o app para aproveitar ainda mais
Prévia do material em texto
Questões Linguagem de programação 1a Questão (Ref.: 201602150879) 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 gera um código executável para cada sistema operacional. Ela é usada para compilar um código Java. 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. 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. Gabarito Comentado 2a Questão (Ref.: 201602356108) 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. A primeira asserção é uma proposição verdadeira, e a segunda, uma proposição falsa As duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta da primeira As duas asserções são proposições verdadeiras, mas a segunda não é uma justificativa correta da primeira A primeira asserção é uma proposição falsa, e a segunda, uma proposição verdadeira Tanto a primeira quanto a segunda asserções são proposições falsas 3a Questão (Ref.: 201602351413) 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 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.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 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.: 201602197826) Fórum de Dúvidas (0) Saiba (0) Seja um programa em java com o seguinte código: public class PrimeiroPrograma { public static void main (String args[]) { System.out.println("Bem vindo ao Mundo Java"); } } Marque a única alternativa CORRETA: O arquivo pode ser salvo com qualquer nome desde que tenha a extensão .java, indicando que é um código fonte em java. O arquivo pode ser salvo como primeiroprograma.java, pois o java não faz diferença entre letras maiúscula e minúscula. O arquivo deve ser salvo como PrimeiroPrograma.java, pois o java faz diferença entre letras maiúscula e minúscula. O arquivo pode ser salvo com qualquer nome, pois o compilador entenderá que é um programa em java. O arquivo deve ser salvo como ProgramaPrincipal.java, pois este possui o método main (String arg []) que é o método principal do java. Gabarito Comentado 5a Questão (Ref.: 201602818059) Fórum de Dúvidas (0) Saiba (0) Quando programamos em Java, devemos levar em consideração as convenções de nomenclatura para deixar nosso código o mais legível e documentável possível, pois um dos objetivos da programação orientada a objetos é o reaproveitamento do código. Com relação ao nome de classes, por convenção, marque a opção incorreta: toda classe deve começar com uma letra maiúscula deve começar com letras minúsculas, porém não podem começar com números. O nome da classe deve fazer referência total ao seu objeto caso o nome de uma classe seja composto por mais de uma palavra, a primeira letra de cada palavra deve ser em maiúscula. O nome da classe deve ser exatamente o mesmo nome de seu arquivo fonte ( .java ) 6a Questão (Ref.: 201602696843) Fórum de Dúvidas (0) Saiba (0) É muito importante para trabalharmos com a programação java, que saibamos como o mesmo funciona, quais suas partes e a relação entre elas. Em relação ao funcionamento podemos afirmar que o mesmo acontece na seguinte ordem: Editor gera o .java, Compilador gera o .class, Carregador gera o bytecodes, Verificador verifica o bytecodes e por fim o Interpretador interpreta os bytecodes. Editor gera o .java, Compilador gera o .class, Carregador gera o bytecodes, Verificador gera o código binário e por fim o Interpretador interpreta o binário. Editor gera o .class, Compilador gera o .Java, Carregador gera o código binário, Verificador verifica o binário e por fim o Interpretador interpreta o binário. Editor gera o .java, Compilador gera o .class, Carregador gera o código binário, Verificador verifica o binário e por fim o Interpretador interpreta o binário. Editor gera o .class, Compilador gera o .Java, Carregador gera o bytecodes, Verificador verifica o bytecodes e por fim o Interpretador interpreta os bytecodes. Gabarito Comentado 7a Questão (Ref.: 201602150874) 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 é: Determinar quando uma classe deve ser abstrata. Detectar os Hot Spots das aplicações. Eliminar os objetos que não estão sendo usados se estiver com pouco espaço na memória. Possibilitar a criação de herança entre as classes. Permitir a instanciação do objeto na memória. Gabarito Comentado 8a Questão (Ref.: 201602824545) Fórum de Dúvidas (0) Saiba (0) Para que possamos desenvolver sistemas nas mais diversas linguagens, é muito importante conhecer suas principais características e como as mesmas funcionam. Na linguagem Java, do processo de criação do código até a execução do programa passamos por algumas etapas. Em uma delas é gerado o "bytecode". Qual das respostas apresenta o conceito correto para "bytecode"? É a compilação de um programa escrito em Java, com o objetivo de ser interpretado pela JVM. Código fonte desenvolvido pelo usuário, sujeito a interpretação do Sistema Operacional. É resultado da interpretação do código fonte de um programa escrito em Java. É a compilação de um programa escrito em Java, com o objetivo de ser interpretado pelo Sistema Operacional. É a interpretação deum programa escrito em qualquer linguagem, com o objetivo de ser compilado pela JVM. 2 1a Questão (Ref.: 201602150898) Fórum de Dúvidas (1) Saiba (1) Existem diferentes tipos de classes que podem ser criadas durante a implementação de uma solução em Java. A classe que possui o método main tem como função: iniciar a execução da aplicação. definir que a classe é uma classe abstrata. definir que a classe não tem corpo. definir que a classe irá gerar um código executável (.exe). definir que a classe é uma interface. Gabarito Comentado 2a Questão (Ref.: 201602335960) Fórum de Dúvidas (1) Saiba (1) (FUMARC/2011) Analise o seguinte programa desenvolvido na linguagem Java. public class testeLogica { public static void main(String[] args) { boolean A, B; boolean R1, R2, R3, R4; A = true; B = false; R1 = (A || B && A || !B); R2 = (!(A || !B) && (A || B)); R3 = (A && B) && (!A || !B); R4 = (!A || B || A || !B); System.out.println(R1); System.out.println(R2); System.out.println(R3); System.out.println(R4); } Qual é a sequência CORRETA ? (de cima para baixo) true, true, true, false false, true, false, true false, false, false, true true, false, true, false true, false, false, true Gabarito Comentado Gabarito Comentado 3a Questão (Ref.: 201602151391) 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 [4][5]; int [][] matriz = new int [4][5]; int [][] matriz = new int [5,4]; int [][] matriz = new int [4,5]; int [][] matriz = new int [5][5]; 4a Questão (Ref.: 201602153076) Fórum de Dúvidas (1) Saiba (1) Observe o código em Java a seguir, em que se pode verificar a aplicação dos operadores de pré-decremento e pós-decremento. public class Decrementa{ public static void main(String args[]) { int m, n = 44; m = --n; m = n--; System.out.println(m); System.out.println(n); } } Qual será a saída ? 42 e 41 42 e 42 43 e 43 43 e 42 42 e 43 Gabarito Comentado 5a Questão (Ref.: 201602211443) Fórum de Dúvidas (1) Saiba (1) Depois de declarada, uma variável na linguagem Java pode ter um valor atribuído a ela com o operador de atribuição: :: : = <= := 6a Questão (Ref.: 201602153046) 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 7a Questão (Ref.: 201602150895) 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: 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 agrupar objetos. é usada somente para agrupar dados de tipos primitivos, como int e double. é usada somente para armazenar tipos primitivos. 8a Questão (Ref.: 201602151799) 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: um vetor somente pode armazenar tipos primitivos de dados o limite de um vetor em Java é de 255 posições 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]; declara-se um vetor: int c[5] = new int(); 3 1a Questão (Ref.: 201602351444) Fórum de Dúvidas (0) Saiba (0) 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.awt e javax.swing java.util e java.lang java.lang e javax.swing javax.swing e java.util java.awt e java.lang Gabarito Comentado 2a Questão (Ref.: 201602819369) Fórum de Dúvidas (0) Saiba (0) 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. Apenas a alternativa ii está correta. Apenas a alternativa i está correta. Apenas a alternativa iii está correta. Todas as alternativas estão erradas. 3a Questão (Ref.: 201602819358) Fórum de Dúvidas (0) Saiba (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. Apenas a alternativa iii está correta. Apenas a alternativa i está correta. Todas as alternativas estão erradas. Todas as alternativas estão corretas. Apenas a alternativa ii está correta. 4a Questão (Ref.: 201602735359) Fórum de Dúvidas (0) Saiba (0) 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 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. Pertence ao pacote javax.swing É um componente visual que possibilita a manipulação de coleções de objetos permitindo ao usuário selecionar apenas um objeto da coleção 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(); Gabarito Comentado 5a Questão (Ref.: 201602819364) Fórum de Dúvidas (0) Saiba (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. EXIT_ON_CLOSE HIDE_ON_CLOSE DESTROI_ON_CLOSE DO_NOTHING_ON_CLOSE DISPOSE_ON_CLOSE Gabarito Comentado 6a Questão (Ref.: 201602735354) Fórum de Dúvidas (0) Saiba (0) 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: O JPanel, assim como o JFrame são derivados do pacote java.util.awt São criados com a classe JPanel, que é derivadada classe Container A classe JPanel não tem painel de conteúdo como JFrames, assim, os elementos devem ser diretamente adicionados ao objeto painel 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. Gabarito Comentado Gabarito Comentado 7a Questão (Ref.: 201602735355) Fórum de Dúvidas (0) Saiba (0) 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: JTextField caixa = new JTextField() JFrameText texto = new Text() JLabel("caixa de texto") JBox caixa = "Caixa de Texto" JComboText combo = new "Caixa de Texto" Gabarito Comentado Gabarito Comentado 8a Questão (Ref.: 201602735357) Fórum de Dúvidas (0) Saiba (0) 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: Os nomes recebem um "J" no seu início: JLabel, JButton, JFrame, JPanel, etc Conhecidos como componentes Java puros A maioria de seus componentes é escrita, manipulada e exibida completamente em Java São extensões do pacote java.util.swing Possui portabilidade, em relação ao componente AWT 4 1. 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. Nem todo parâmetro precisa especificar necessariamente o tipo ou o identificador. Em geral você pode chamar um método de uma classe, mesmo sem ter criado um objeto desta classe. Um método pode especificar múltiplos parâmetros, separando cada parâmetro do seguinte por um ponto e vírgula. 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. 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. Gabarito Comentado 2. O Encapsulamento é o mecanismo utilizado em orientação a objetos para obter segurança, modularidade e autonomia dos objetos através dos modificadores. Marque a questão que apresenta a abrangência do modificador protected. Acessado de qualquer lugar. Acessado na classe e no pacote. Acessado apenas na classe e na subclasse. Acessado na classe, no pacote e na subclasse. Acessado no pacote e na subclasse. Gabarito Comentado 3. Um estagiário está desenvolvendo, a luz do paradigma da orientação a objetos, parte de um programa responsável por gerenciar a folha de pagamento de uma instituição financeira do Rio de Janeiro. Devido a sua pouca experiência com Java, durante a codificação surgiram algumas dúvidas quanto a conceitos básicos deste paradigma. É incorreto afirmar que em Java: A classe provê a estrutura para a construção de objetos. Objetos de software são conceitualmente similares a objetos do mundo real: eles consistem do estado e o comportamento relacionado. Um objeto não armazena seu estado em campos (variáveis) e expõe seu comportamento através de métodos (funções). Atributos: determinam o estado do objeto Objetos são instâncias da classe. Gabarito Comentado 4. Assinale a alternativa que completa corretamente a lacuna da afirmação a seguir: "Uma casa está para uma planta arquitetônica assim como um(a) __________ está para uma classe." variável objeto atributo método parâmetro Gabarito Comentado 5. Dado o código Java abaixo, marque a alternativa correta referente à criação de um objeto Cliente, o qual faz uso do código informado: public class Cliente{ String nome = null; int idade = 0; String endereco = null; public Cliente(String nome, int idade, String endereco){ this.nome = nome; this.idade = idade; this.endereco = endereco; } } New Cliente = Cliente("Maria", "20","R das Flores 322"); Cliente cliente = new Cliente("Maria", 20, "R das Flores 322"); Cliente cliente = Cliente("Maria", "20","R das Flores 322"); Cliente cliente = new Cliente(); Cliente cliente = Cliente(); 6. Seja a classe: public class Moto { public boolean estadoMotor; public void ligaMotor() {estadoMotor=true;} public void desligaMotor( ) {estadoMotor=false;} } Marque a alternativa que apresenta a forma correta de se criar uma instância desta classe: Moto m.new( ); Moto m.new Moto( ); Moto m=new Moto(); Moto m=new( ).Moto; Moto m.new Moto; Gabarito Comentado 7. 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: a computação seja acionada por troca de mensagens entre objetos os programadores de aplicações sejam mais especializados os usuários utilizem as aplicações de forma mais simples os objetos sejam implementados de maneira eficiente e simples os sistemas sejam encapsulados por outros sistemas Gabarito Comentado 8. Como se instancia um objeto em Java? Classe objeto = new Construtor(); Classe objeto = Construtor(); Construtor objeto = new Classe(); Construtor objeto = new Classe; Classe objeto = new Construtor; 5 1. 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 C, por herdar as características das classes A e B, pode acessar diretamente os atributos de A e B A classe B possui atributo protegido, sendo assim, qualquer classe que herde não pode acessar diretamente o atributo 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 2. Marque a alternativa que representa a palavra reservada em JAVA utilizada para definir a ligação entre as classes Física e Jurídica com a classe Pessoa do modelo abaixo: Generalation Import Package Unify Extends 3. A palavra reservada EXTENDS implementa qual o conceito? Polimorfismo Herança Visibilidade Portabilidade Associação 4. Sobre programação orientada a objetos, assinalea afirmativa INCORRETA: Pacote é um conjunto de classes e interfaces. Uma classe que herda de outra é chamada superclasse. Uma classe é um modelo usado para criar vários objetos com características semelhantes. Herança é um mecanismo que permite a uma classe herdar todo o comportamento e os atributos de outra classe. Os objetos também são denominados instâncias. Gabarito Comentado 5. Com relação a uma classe abstrata é correto afirmar que: Esta não possui métodos nem atributos abstratos Esta só pode ser instanciada se o objeto também for abstrato. Esta não pode ser instanciada. Esta não possui métodos. Esta só possui métodos e atributos abstratos Gabarito Comentado Gabarito Comentado 6. Uma classe que não é concebida para criar instâncias, servindo como uma superclasse para outras classes é a: múltipla concreta dinâmica abstrata obstrutiva Gabarito Comentado 7. 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 à: Polimorfismo Interface Classes Abstratas Herança Exceção Gabarito Comentado 8. Uma classe ClasseA de determinada aplicação possuía um método calculeAlgo() em que testes (instruções de desvio condicional) eram utilizados para se determinar que algoritmo deveria ser adotado para efetuar o cálculo. Foi criada uma nova hierarquia de classes, iniciando na classe abstrata ClasseB, que declara o método abstrato calcule(). Este método é implementado por cada classe concreta da hierarquia, sendo cada uma delas correspondente a um dos algoritmos previstos no método calculeAlgo() original. ClasseA passou a ter um atributo do tipo ClasseB e métodos de acesso ao mesmo, e calculeAlgo() teve seu código substituído por uma simples chamada ao método calcule() do objeto armazenado no novo atributo. O conceito OO (Orientação a Objetos) predominante na descrição acima é a(o): herança múltipla polimorfismo acesso externo direto a atributo sobrecarga de atributo sobrecarga de método ......................................................................................................................................................................................................................................................................................................... 6 1. Em Java temos a possibilidade de proteger os membros de uma classe. Chamamos este processo de: sobrecarga. polimorfismo. threads. herança. encapsulamento. Gabarito Comentado 2. Na Programação Orientada a Objetos podem-se definir as visibilidades dos métodos e atributos. Quanto a essa característica é correto afirmar que: os métodos públicos e os atributos protegidos só podem ser acessados a partir dos métodos da própria classe ou de classes derivadas o acesso aos atributos privados e aos métodos públicos só pode ser feito a partir dos métodos membros da classe os métodos protegidos podem ser acessados a partir dos métodos de qualquer classe, desde que instanciada na mesma aplicação os métodos privados e os atributos protegidos podem ser acessados a partir dos métodos de qualquer classe o acesso aos atributos e aos métodos privados só pode ser feito a partir dos métodos membros da classe Gabarito Comentado 3. 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: 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 a classe Notebook possui dois atributos encapsulados e privados e apenas o método construtor 4. Seja a classe: public class Carro { private String cor; private boolean estadoMotor; public void ligaMotor() {estadoMotor=true;} public void desligaMotor( ) {estadoMotor=false;} public boolean motor( ){ return estadoMotor;} } Se o código abaixo for executado, pode-se dizer que: public class Teste { public static void main(String[] args) { Carro c=new Carro(); c.cor="Preto"; } } Será gerado um erro de compilação, pois o atributo é private. Será gerado erro de execução pois o tipo do atributo está em desacordo com o valor atribuído. O código é executado normalmente, pois c é uma instancia da mesma classe que o atributo. O objeto c não pode ser instanciado, pois não há construtor na classe. Será gerado erro de compilação pois há erro de sintaxe em: c.cor="Preto"; Gabarito Comentado 5. Como se declara um método estático em Java? static exemploMetodo() {} public void static exemploMetodo() {} public static void exemploMetodo() {} public void exemploMetodo() {} static void public exemploMetodo() {} Gabarito Comentado 6. As ações ou comportamento dos objetos 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 void Método main Método construtor Método get Método set 7. 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); } } Instância Herança Polimorfismo Encapsulamento Abstração 8. 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; } } Os dois métodos estão errados, pois não estão atualizando o atributo estado da classe. 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 . 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 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. Gabarito Comentado 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: b c a e d Gabarito Comentado 2. As interfaces gráficas com o usuário (GUI - GraphicalUser 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.awt e java.lang java.lang e javax.swing javax.swing e java.util java.util e java.lang java.awt e javax.swing 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: JListBox JTextBox JComboBox JTextField JLabelText 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 é: JFrame botao = new JButton("sair"); JFrame.botao = new.JButton("sair"); JButton botao = new JFrame("sair"); JButton.botao = new JButton("sair"); JButton 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"); } }); } } 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 programa não termina quando a janela é fechada porque não foi adicionado um WindowListener ao objeto referenciado por f no método main o código não executará, com erro no construtor o símbolo b não poderia ser referenciado dentro do método main porque este não faz parte da classe Q4Class 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: Encapsulamento Abstração Sobrecarga Polimorfismo Herança 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) Agregação Associação Abstração Classe Abstrata Herança 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. encapsulamento. subclasse. polimorfismo. mensagem. herança. 8 1. 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 mapeadas como 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, II e III. Todas as afirmativas são corretas. Apenas a alternativa I. Apenas as afirmativas I e IV. Apenas as afirmativas II, III e IV. 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 actionListenet(ActionEvent e) public void itemPerformed(ActionEvent e) public void actionStateChanged(ActionEvent e) public void itemStateChanged(ActionEvent e) public void actionPerformed(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. addActionListener getActionCommand ActionPerformed ActionEvent ActionListener 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 _________ ." showMessage/JOption showInputDialog/JOptionPane. showMessageDialog/JOptionPane showInputBox/JOptionBox showMessageBox/JOptionBox Gabarito Comentado 5. 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.showMessageDialog(null, "Minha mensagem!"); JOptionPane.showInputDialog(null, "Minha mensagem!"); JOptionPane.showFileChooser(null, "Minha mensagem!"); JOptionPane.showConfirmDialog(null, "Minha mensagem!"); JOptionPane.showQuestionMessage(null, "Minha mensagem!"); 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: Container FlowLayout Action Interface 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.QUESTION_MESSAGE); 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...",YES_NO_OPTION); JOptionPane.showConfirmDialog(null, "Deseja salvar?","Salvar...", JOptionPane.YES_NO_OPTION); Gabarito Comentado 8. Para tratar os eventos relacionados a botões( Jbutton, JradioButton, JcheckBox, JtoogleButton) ou itens de um menu (JMenuItem), devem-se criar classes para manipulação a partir de interface java.awt.event.ActionListener. Essa interface tem apenas um método (actionPerformed(ActionEvent e)), motivo pelo qual: existem diversos adapters (classes adaptadoras) para este tipo de evento. não existe uma classe adaptadora (adapter) para este tipo de evento. não associa-se a estes componentes diversos tipos de eventos. não se pode associar nenhuma ação a esses comonentes gráficos. estes componentes gráficos são estáticos e não efetuam eventos. 9 1. 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 subclasse que indica uma tentativa de converter para o formato numérico uma String cujo conteúdo não seja compatível com o formato escolhido é: NullPointerException ArithmeticExceptiocn IndexOutOfBoundsException NumberFormatException IOException 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 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 I,II e III estão corretas. Todas as sentenças estão corretas. 3. 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." bloco try método main método getMessage bolco finally bloco cacth Gabarito Comentado 4. No java, é necessário um método para cada catch ou lista de exceções que podem ser lançadas. Se um método causar uma exceção mas não capturá-la, então deve-se utilizar a palavra-chave: Exception Throws Try Finally Error Gabarito Comentado 5. 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 I,II e III estão corretas. Apenas as sentenças II e III estão corretas Gabarito Comentado 6. O tratamento de exceções na linguagem Java é caracterizado pelo encapsulamento das informações de um erro em um objeto que representa uma classe específica de erro. O uso de exceções permite separar a detecção da ocorrência de uma situação excepcional do seu tratamento, ao se programar um método em Java. Sobre o tratamento de exceções em Java, assinale a afirmativa INCORRETA. A cláusula try sempre é executada. Uma exceção é sempre um objeto do tipo Throwable A cláusula catch nem sempre é executada. A cláusula finally é sempre executada mesmo quando existente em um bloco try/catch. As exceções em Java são fixas e não é possível definir novas exceções. Gabarito Comentado 7. Quando em um método, uma determinada situação de exceção é gerada e não é tratada no corpo do método, essa exceção é arremessada para ser tratada pelo invocador. Para indicar o processamento do mecanismo descrito, usa-se a cláusula, abaixo indicada, na assinatura do método: throws raising throwable raise throw Gabarito Comentado 8. 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. 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. O Java permite colocar qualquer código entre um bloco try e seus blocos catch correspondentes. No Java é permitido colocar uma lista de parâmetros de exceção separados por vírgulas para um mesmo bloco catch. No Java se permite capturar o mesmo tipo de exceção em dois blocos catch diferentes em uma única instrução catch. 10 1. Pode-se dizer sobre exceções que: Marque a alternativa correta. throws é o comando responsável pela implementação de uma exceção 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 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. é obrigatório utilizar o comando finally em todos tratamentos de 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: 2,2,1. Imprime no console: 1,1,3. Imprime no console: 2,2,3. O programa não compila. Imprime no console: 1,1,2. 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? Cliques em botões Digitar um texto Ativar e desativar JCheckbox Ativar um RadioButton Clicar em menus Gabarito Comentado Gabarito Comentado 4. Por qual motivo é utilizado o bloco try...catch. Polimorfismo. Tratar e recuperar erros. Auditar código. Realizar tentativas de execução. Fazer depuração de códigos. 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 agregação interface 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 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. O código não compila. O código não compila por causa de um erro no array. O código compila, mas tem sua execução interrompida devido a ocorrência de uma ArrayIndexOutOfBoundsException. Gabarito Comentado AVALIAÇÃO PARCIAL 1a Questão (Ref.: 201602151381) Acerto: 1,0 / 1,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: Portabilidade Recompilação automática Flexibilidade Facilidade de programação Escalabilidade Gabarito Comentado. 2a Questão (Ref.: 201602351413) Acerto: 1,0 / 1,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 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.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 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 javac MeuPrograma 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 java MeuPrograma.java compila-se o arquivo e produz-se o arquivo MeuPrograma.class. Em seguida com o comando javac MeuPrograma o bytecode é executado. Gabarito Comentado. 3a Questão (Ref.: 201602373958) Acerto: 1,0 / 1,0 Considerando o trecho de programa apresentado a seguir, marque a alternativa que apresenta o resultado obtido após o processamento. public class Prog3 { public static void main(String[] args) { String A = "MEL DE ABELHA"; char letra = A.charAt(5); System.out.println("\n" +letra); } } ABELH E MEL DE ABELHA MEL D MEL DE 4a Questão (Ref.: 201602932808) Acerto: 1,0 / 1,0 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 a b c d e f letra letra letra letra letra a b c d 5a Questão (Ref.: 201602819358) 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. Apenas a alternativa iii está correta. Todas as alternativas estão corretas. Apenas a alternativa i está correta. Apenas a alternativa ii está correta. Todas as alternativas estão erradas. 6a Questão (Ref.: 201602735354) Acerto: 1,0 / 1,0 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: 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 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 Gabarito Comentado. Gabarito Comentado. 7a Questão (Ref.: 201602902130) Acerto: 1,0 / 1,0 O paradigma Orientado a Objetos é a base para a linguagem de programação Java, tratando os conceitos de herança, polimorfismo, sobrescrição e sobrecarga. Acerca desses conceitos, considere as afirmativas a seguir. I. A herança é uma técnica que permite que uma classe seja subclasse de outra classe, desde que sejam do mesmo pacote. II. Um mesmo objeto pode ser referenciado por instâncias de tipos diferentes, desde que do mesmo tipo ou de um supertipo do objeto. III. Os métodos construtores das classes Java podem ser sobrecarregados, mas não podem ser sobrescritos. IV. O conceito de sobrecarga é baseado na reutilização dos nomes dos métodos, porém com assinaturas diferentes. Assinale a alternativa correta. Somente as afirmativas II, III e IV são corretas. Somente as afirmativas I, II e III são corretas. Somente as afirmativas I e II são corretas. Somente as afirmativas I e IV são corretas Somente as afirmativas III e IV são corretas. Gabarito Comentado. Gabarito Comentado. 8a Questão (Ref.: 201602150900) Acerto: 1,0 / 1,0 Quando desenvolvemos uma classe em Java podemos definir um atributo de diferentes formas, como usar modificadores de visibilidade e também definí-lo como estático, usando o termo static. Definir um atributo como static significa: É um atributo do objeto e não da classe. É acessado pelo objeto e não pela classe. O dado atribuído a este atributo fica guardado no objeto, e não na classe. É a forma mais próxima de se definir um atributo local em Java. O valor deste atributo é o mesmo para todas as instâncias da classe (ele é compartilhado). 9a Questão (Ref.: 201602375113) Acerto: 1,0 / 1,0O conceito de Herança permite que uma classe herde todos atributos e métodos de uma classe pai. Neste contexto, classes abstratas se referem a: classes que só podem ter duas instâncias tipos de classe que só permitem herdar métodos da classe pai classes sem métodos getters e setters classes que não podem ser instanciadas tipos de classe que só permitem herdar atributos da classe pai 10a Questão (Ref.: 201602874047) Acerto: 0,0 / 1,0 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: sobrecarga de método. sobrescrita de método. método abstrato. encapsulamento do método. herança de método.
Compartilhar