Questões de Concurso Público UFES 2021 para Técnico em Tecnologia da Informação
Foram encontradas 5 questões
Considere o seguinte código Java, escrito em um arquivo chamado TesteConta.java:
public class TesteConta {
public static void main(String ... args) {
Conta conta = new Conta();
conta.depositar(1000);
conta.sacar(1100);
System.out.println(conta.saldo);
}
}
class Conta {
double saldo;
void sacar(double qtd) {
saldo = saldo - qtd;
}
void depositar(double qtd) {
saldo += qtd;
}
}
O resultado de se compilar e executar o código acima é que o programa
public class TesteContaProtegida { public static void main(String[] args) { Conta conta = new Conta(); conta.saldo = 1_000_000_000; System.out.println(conta.saldo); } } class Conta { /* ___ */ double saldo; void sacar(double qtd) { saldo = saldo - qtd; } void depositar(double qtd) { saldo += qtd; } }
Nesse código, a classe Conta não encapsula o atributo saldo e, portanto, não o protege de alterações diretas, sem o uso de métodos, como, por exemplo, o método main() altera diretamente o saldo da conta sem ter feito nenhum saque ou depósito. A palavra-chave da linguagem que pode ser colocada no lugar da lacuna representada por /* ___ */ no código acima, de modo a causar um erro de compilação nas linhas que tentam acessar conta.saldo diretamente e, portanto, devidamente encapsular esse atributo é
Considere o seguinte código HTML de uma página Web com uma folha de estilos CSS (Cascading Style Sheets) embutida:
<!DOCTYPE html>
<html>
<head>
<title>Uma página</title>
<style>
body {
font-family: sans-serif;
}
h2 {
text-decoration: underline;
}
p {
color: red;
}
.frase {
text-align: center;
}
</style>
</head>
<body>
<h1>Um título</h1>
<h2>Um subtítulo</h2>
<p class="frase">Uma frase</p>
</body>
</html>
Considerando as regras de aplicação de propriedades do CSS, as mudanças de estilo que
serão aplicadas ao trecho “Uma frase” quando essa página Web for aberta em um
navegador compatível são:
<!DOCTYPE html> <html> <head> <title>Uma página</title> <script> function mudar() { var frase = /* ___ */; frase.innerHTML = frase.innerHTML.replace("frase", "palavra"); } </script> </head> <body> <p id="par">Olá, JavaScript</p> <p class="par">Uma frase</p>
<button onclick="javascript:mudar()">Mudar</button> </body> </html>
O objetivo do código acima é mostrar uma página em cujo primeiro parágrafo estará escrito “Olá, JavaScript”, e em cujo segundo parágrafo estará escrito “Uma frase” e aparecerá um botão escrito “Mudar” que, se clicado, modificará o conteúdo do segundo parágrafo para “Uma palavra”. O trecho de código JavaScript que deve substituir a lacuna de modo a alcançar o objetivo acima descrito é
@Controller public class OlaMundoController {
@RequestMapping("/olaMundoSpring") public String execute() { System.out.println("Executando a lógica com Spring MVC"); return "ok"; } }
Considerando o código acima, analise as afirmativas a seguir:
V. Para integrar-se ao Spring MVC, é obrigatório que a classe tenha o sufixo “Controller” em seu nome e a anotação @Controller acima da definição da classe.
VI. A anotação @RequestMapping acima do método execute() indica a URL utilizada para invocar o método, ou seja, que esse método será chamado pelo Spring MVC quando o caminho /olaMundoSpring for acessado no contexto da aplicação Web à qual o controlador pertence.
VII. O valor de retorno "ok" do método execute() indica ao Spring MVC que, após execução do método, envie o usuário a uma página com nome ok, que se encontra em uma determinada pasta e com um determinado sufixo, ambos especificados em um arquivo de configuração do framework.
VIII.Podem ser criados outros métodos que respondam por outras URLs nessa mesma classe. Para tal, bastaria que fosse utilizada novamente a anotação @RequestMapping nesses métodos.
É CORRETO o que se afirma em