Questões de Concurso
Comentadas sobre java em programação
Foram encontradas 1.747 questões
Dadas as afirmativas a respeito das estruturas de dados e suas respectivas implementações disponíveis na API da linguagem Java,
I. Quando um sistema não possui acesso concorrente (thread safe) é preferível utilizar a estrutura de dados implementada pela classe HashMap, ao invés da estrutura implementada pela classe Hashtable.
II. Enquanto a estrutura de dados implementada na classe HashMap mantém os valores ordenados pela chave, a estrutura de dados implementada na classe TreeMap não garante a ordem das chaves, uma vez que os dados são organizados na forma de árvore.
III. Enquanto uma busca em uma estrutura de dados linear, como uma lista encadeada, tem complexidade 0(N) , uma busca binária em uma estrutura de dados de árvore tem complexidade 0(log N) .
IV. Tanto a classe HashSet quanto a Hashtable implementam diretamente as interfaces Collection e Iterable.
verifica-se que estão corretas apenas
Dadas as afirmativas sobre o paradigma orientado a objetos e as linguagens Java e C++,
I. O uso de artifícios como Templates (de C++) ou Generics (de Java) é considerado um tipo particular de polimorfismo, denominado polimorfismo paramétrico.
II. Em linguagens orientadas a objetos somente existem três tipos de polimorfismo.
III. Apesar de aumentar a flexibilidade do software, o uso de polimorfismo é desaconselhado, uma vez que prejudica a segurança do sistema.
verifica-se que está(ão) correta(s)
As classes, são estruturas das linguagens de programação orientadas a objetos para conter, para determinado modelo, os dados que devem ser representados e as operações que devem ser efetuadas com estes dados.
Considere as seguintes afirmações:
I A classe é usada para que várias instâncias sejam criadas a partir dela.
II Na linguagem de programação Java, as operações contidas em uma classe são chamadas de método.
III Na linguagem de programação Java, os construtores são métodos especiais, que são chamados quando instâncias são criadas.
IV Na linguagem de programação Java, os construtores devem ter exatamente o mesmo nome da classe a que pertencem e não podem retornar nenhum valor, nem mesmo void.
São verdadeiras as afirmações
Com respeito ao desenvolvimento de aplicações web em Java, avalie as assertivas abaixo.
I. HttpServlet é uma classe abstrata utilizada para a criação de servlet. Essa classe provê métodos para tratar requisições HTTP.
II. Para implementar um tratamento específico para requisições HTTP POST em um servlet, é necessário implementar o método doPost().
III. O protocolo HTTP possui vários tipos de requisição (GET, POST, PUT e DELETE). Uma implementação de servlet pode tratar apenas um desses tipos de requisição.
IV. Um MIME TYPE informa ao browser que tipo de dado ele irá receber, de maneira que o browser possa tratar a resposta de forma adequada.
V. Para criar um filtro em aplicações que utilizem a especificação Servlet 3.0, é necessário apenas anotar a classe com @WebFilter, sem a necessidade de implementar qualquer interface.
São verdadeiras, apenas, as assertivas:
Considere as linhas de código a seguir, criadas em uma aplicação Java SE que utiliza os recursos do pacote javax.swing.
JButton btnSalvar = new JButton("B1");
btnSalvar.setSize(100, 30);
btnSalvar.setLocation(10, 20);
Estas linhas definem o tamanho e a posição de um botão em uma janela de aplicação desktop desenvolvida em Java. Para manter o mesmo efeito na tela, os comandos btnSalvar.setSize(100, 30); e btnSalvar.setLocation(10, 20); podem ser substituídos porConsidere os fragmentos de código Java abaixo, que executam a mesma operação SQL de inserção de um registro em uma tabela de um banco de dados, porém, utilizando interfaces diferentes.
Fragmento 1:
x.executeUpdate("insert into advogado (num_OAB, nome) values (" + num_OAB + ", '" + nome + "')");
Fragmento 2:
y = conn.prepareStatement("insert into advogado (num_OAB, nome) values (?, ?)");
y.setInt(1, num_OAB);
y.setString(2, nome); y
.executeUpdate();
Na servlet de uma aplicação web desenvolvida com Java, existe o seguinte fragmento de código.
request.setAttribute("user", "Procuradoria_MT");
RequestDispatcher rd = request.getRequestDispatcher("dados.jsp");
rd.forward(request, response);
No corpo da página dados.jsp, foram consideradas as instruções abaixo para receber e exibir o parâmetro user.
I. <%= request.getAttribute("user") %>
II. <% out.print(request.getParameter("user")); %>
III. ${user}
IV. <% out.print(request.getAttribute("user")); %>
Estão corretas, nesse contexto, APENAS as instruções
Analise as afirmações abaixo, sobre o seu funcionamento.
1) Uma cláusula finally é colocada no fim de uma lista de tratadores, imediatamente depois de uma construção try completa. 2) Se a cláusula try lança nenhuma exceção, a cláusula finally é executada antes de a execução continuar depois da construção try. 3) Se a cláusula try gera uma exceção e é capturada por um tratador, a cláusula finally não é executada. 4) Se a cláusula try gera uma exceção, mas não é pega por um tratador após o construto try, a cláusula finally é executada antes de a exceção ser propagada. 5) A construção try sem tratadores de exceção pode ser seguida por uma cláusula finally. Isso faz sentido, claro, somente se nos comandos que a compõem existe um throw, break, continue, ou return. Estão corretas, apenas:
while (expressão) { comando(s); }
Analise as tentativas de se simular o comportamento do while, usando outros comandos de repetição. Marque V para as tentativas que funcionam, ou F para as que não funcionam – seja por estarem logicamente erradas, seja por causarem erros de compilação ou execução ( ) if (expressão) { do comando(s); while (expressão); } ( ) if (expressão) { do comando(s); while (!(expressão)); } ( ) for (;expressão;) { comando(s); }
A sequência correta, de cima para baixo, é: