Questões de Concurso
Comentadas sobre linguagens de programação em programação
Foram encontradas 4.488 questões
I. O mecanismo de herança em Java ocorre em tempo de compilação, ou seja, todo reaproveitamento de código realizado por herança é imutável em tempo de execução. II. A linguagem C++ possui herança múltipla, Java possui somente herança simples para classes concretas e abstratas, mas possui herança múltipla para a “interface”, já Javascript não possui herança como funcionalidade nativa. III. C++ é uma linguagem compilada, Java é compilada para uma linguagem de máquina intermediária chamada de bytecodes, sendo esta interpretada e Javascript é interpretada.
É correto afirmar que
I. Foi introduzida a utilização de classes a partir do ECMAScript 2015 para simplificar a utilização e manutenção de heranças baseadas no “prototype”. Porém, este recurso é apenas um embelezamento de código, uma vez que tudo ocorre dinamicamente e as classes na verdade são objetos.
II. Os objetos em Javascript são mutáveis, significa que mesmo depois de instanciados estes podem ter novas propriedades e métodos, independente dos outros objetos instanciados pelo mesmo construtor.
III. Javascript possui tipos primitivos fracamente tipados e dinamicamente tipados, sendo estes declarados com a palavra reservada “var”. Uma vez declarados com “var”, a variável tem validade dentro do escopo que foi declarado, por exemplo, se declarado dentro de uma estrutura de decisão, não será válido sua utilização fora desse escopo.
É correto afirmar que
I. Pode ser utilizada programação estruturada ou programação orientada a objeto, ou ainda uma mistura das duas formas de programação. II. Tem recursos úteis para processamento de texto, incluindo expressões regulares. III. Tem suporte para comunicação com serviços, utilizando protocolos como LDAP, IMAP, SNMP, NNTP, POP3 e HTTP.
É correto afirmar que
Complete as lacunas das frases, indicando a qual elemento da tríade de tecnologias a descrição se refere.
1) ______________: tecnologia para especificar o conteúdo de páginas Web.
2) ______________: tecnologia para especificar a apresentação dessas páginas.
3) ______________: tecnologia para especificar o comportamento das mesmas.
A sequência que preenche corretamente as lacunas das frases é
Existe uma linguagem de programação da Web que a maioria dos sites modernos usa e todos os navegadores atuais – em computadores de mesa, consoles de jogos, tablets e smartphones – a incluem, tornando-a a linguagem de programação mais onipresente da história.
Qual é a linguagem de programação descrita?
$m = array("Um ","Dois ",3 => "Três ","Quatro ",); foreach($m as $x => $y) print $x;
O que será gerado pelo comando “print $x”?
A qual linguagem de programação ele pertence?
Considere as seguintes afirmativas sobre os tipos de exceções que existem na linguagem Java e o que caracteriza cada um desses tipos.
I Todas as exceções em Java herdam direta ou indiretamente da classe Throwable.
II Existem dois tipos de exceções Java: (1) exceções checadas (checked exceptions) que herdam da classe Exception ou de outra exceção checada e (2) exceções não checadas que herdam da classe Throwable.
III Um exemplo de exceção não checada é a do tipo Error que geralmente representa restrições de recursos ou problemas internos à máquina virtual Java (JVM).
IV O compilador Java não permite que sejam definidos tratadores (cláusulas catch) para as exceções de tipo RuntimeException e Error.
Estão corretas as afirmativas
Para responder a questão considere a definição abaixo.
O Spring é um framework de aplicação e container de inversão de controle para
aplicações Java.
A respeito do framework Spring, analise as afirmações abaixo.
I A anotação @Transactional do Spring é usada para indicar classes ou métodos específicos que irão delimitar transações com o banco de dados, podendo ser aplicada a classes ou métodos específicos.
II A demarcação de transações pode ser feita no Spring através da inclusão de configurações com a tag <transaction< no arquivo applicationContext.xml.
III A configuração através de arquivos XML oferece flexibilidade para indicar padrões de nomes de classes e métodos que serão demarcados com transações, assim como os respectivos modos de propagação.
IV Por default, todas as transações criadas pelo framework Spring possuem modo de propagação REQUIRES_NEW, o que significa que ele cria uma nova transação para cada método transacional chamado.
Estão corretas as afirmações
Em relação à categoria e à precedência de operadores na linguagem Java, atribua V (verdadeiro) ou F (falso) às afirmativas a seguir.
( ) Os operadores / e % possuem a mesma precedência, sendo avaliados da esquerda para a direita.
( ) O operador % possui uma precedência maior que o operador *.
( ) Os operadores + e − possuem a mesma precedência, sendo avaliados da direita para a esquerda.
( ) Os operadores == e != possuem a mesma precedência, sendo avaliados da esquerda para a direita.
( ) O operador * possui uma precedência maior que o operador ==.
Assinale a alternativa que contém, de cima para baixo, a sequência correta.
Sobre a programação orientada a objetos no Java, considere as afirmativas a seguir.
I. Métodos static herdados não podem ser sobrescritos.
II. Uma classe abstrata é criada com a palavra chave abstract.
III. Uma classe abstrata está impedida de possuir métodos abstratos.
IV. Construtores static podem ser declarados como abstract.
Assinale a alternativa correta.
Sejam as seguintes classes escritas em linguagem Java:
class A { public String m (String s) { return s + "a"; } }
class B extends A { public String m (String s) { return s + "b"; } }
class C extends B { public String m () { return "c"; } }
class D extends C { public String m (String s) { return s + "d"; } }
Considere ainda as sentenças a seguir:
D obj = new D(); C x = obj; B y = obj; A z = obj;
A execução da expressão x.m(y.m(z.m(obj.m(new C().m("#"))))) resulta no valor
Sejam as classes seguintes escritas em Java:
class A {int x; A(){setX(10);} int getX(){return x;} void setX(int y) {x=y;}}
class B extends A {B(){ x+=100; }}
class C extends B { C(){ this(10); x*=2; } C(int y) {setX(y+getX());}}
A execução da sentença new C().getX() retorna o valor