

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
Considere as classes a seguir:
Marque a alternativa que define quais os conceitos de orientação a objetos que estão sendo utilizados e os modificadores que melhor completam, respectivamente, as linhas 15, 17, 29 e 33.
|
Conceitos |
Modificadores |
|
herança e encapsulamento |
overload, overload, virtual e virtual |
|
herança, encapsulamento e polimorfismo |
virtual, virtual, override e override |
|
herança, encapsulamento e polimorfismo |
virtual, virtual, overload e overload |
|
herança e polimorfismo |
virtual, virtual, overload e overload |
Observe o trecho de código em linguagem C# a seguir:
if (a == b){
Console.Write("SIM");
} else {
Console.Write("NÃO");
}
Sem perder a funcionalidade, esse código pode ser reescrito como:
(a == b) ? Console.Write("SIM") : Console. Write("NÃO");
Console.Write(b == a ? "NÃO":"SIM");
Console.Write("SIM" if a == b else "NÃO");
Console.Write(a != b ? "NÃO":"SIM");
(a != b) ? Console.Write("NÃO") : Console. Write("SIM");
Um Assistente Tecnológico da PRODATER necessita utilizar uma tabela de hashing em uma aplicação em C#. Ele criou a hashtable cidades usando o comando
Hashtable cidades = new Hashtable();
para inserir nomes-chave de cidades do Piauí associados a um valor numérico.
Considerando que a aplicação está sendo desenvolvida em condições ideais, é correto afirmar que o comando:
hashtab.Add(1000,"Teresina");
insere a cidade de Teresina com código 1000.
foreach (int key in hashtab.Keys){Console.WriteLine("Codigos: " + key);}
apresenta os códigos, que são as chaves da hashtable, de todas as cidades.
hashtab.Add("Picos", 1550);
insere a cidade de Picos com código 1550.
int value = (int)cidades("Piripiri");
retorna o código da cidade Piripiri, mesmo que ainda não tenha sido inserida na hashtable.
Console.WriteLine(cidades.ContainsKey("Teresina"));
retorna true se a cidade Teresina já tiver sido inserida na hashtable.
Analise as afirmativas abaixo em relação à linguagem C#.
I. C# é considerada uma linguagem tipada estaticamente, por exemplo, uma variável tem o seu tipo definido no momento da compilação.
II. O tipo de dado Real pode ser representado pelos tipos Float e Double em C#.
III. Console.WriteLine("Testing") e Console.WriteLine("Testing") são equivalentes em C#
IV. Classes em C# oferecem o mecanismo de encapsulação da orientação a objetos
De acordo com as afirmativas, marque a alternativa CORRETA:
Apenas a afirmativa II está correta.
Apenas as afirmativas I e III estão incorretas.
Apenas a afirmativa III está incorreta.
Todas as afirmativas estão corretas.
1-3-4-5-2.
1-4-3-5-2.
1-5-4-3-2.
1-5-4-2-3.
Um programador em linguagem C# incluiu, no início de seu programa, a seguinte declaração:
using System.IO;
Nessa declaração, System.IO corresponde ao nome de
uma classe.
uma interface.
uma interface.
um namespace.
um método.
Na linguagem C#, o tratamento de exceções pode ser feito pelos construtos:
error, process e construct.
flush, error e bind.
cast, handle e error.
try, catch e finally.
Considere o seguinte código de testes na linguagem C#:
public class Multiplicador
{
----private int _resultado = 1;
----public void Multiplicar (int number)
----{
-------_resultado *= number;
----}
----public int Resultado ()
----{
-------int retorno = _resultado;
-------_resultado = 1;
-------return retorno;
----}
}
[TestClass]
public class UnitTest_Multiplicador
{
----[TestMethod]
----public void Multiplica ()
----{
-------/
-------var sut = new Multiplicador ();
-------var actual = 0;
-------var expected = 24;
-------/
-------sut.Multiplicar (-2);
-------actual = sut.Resultado();
-------sut.Multiplicar(3);
-------sut.Multiplicar(-4);
-------actual = sut.Resultado();
-------/
-------Assert.AreEqual (expected,actual);
----}
}
Sobre o código de testes apresentado e o resultado da sua execução, é correto afirmar que:
o teste passa pois, ao final da execução, os valores das variáveis actual e expected são iguais;
o teste falha pois, como trata-se de uma multiplicação, o valor da variável actual não pode ser inicializado com zero;
o teste falha e, ao final da execução, o valor da variável actual é -24 e o da variável expected 24;
o código não compila pois a classe Multiplicador não está marcada com o atributo [TestClass];
o teste passa caso o valor de inicialização da variável expected seja -12 em vez de 24.
Considere as seguintes afirmativas a respeito de linguagens de programação.
I. Ruby é um exemplo de linguagem orientada a objetos.
II. Python é um exemplo de linguagem orientada a objetos.
III. C++ é um exemplo de linguagem orientada a objetos.
Assinale a alternativa CORRETA.
Nenhuma das afirmativas está correta.
Somente a afirmativa III está correta.
Somente as afirmativas I e III estão corretas.
Todas as afirmativas estão corretas.
Somente as afirmativas I e II estão corretas.
Analise o código em linguagem C# a seguir:
using System;
class Program {
void Main(){
Console.Write("Olá mundo!");
}
}
Esse código não compila corretamente, pois
falta incluir a declaração “using Console.”
o método Console.Write não existe, o correto é Console.WriteLine.
o método Main deve ser estático (static).
o método Main deve obrigatoriamente especificar os argumentos “string[] args”.
a declaração das classes deve ser sempre finalizada com ponto e vírgula.
int[][] VetorBidimensional = new int[][]
1 1 1 2 2 2 3 3 4
1 2 1 2 3 1 2 3 4
1 2 3 4
1 2 3
2 3 4 1 2 3 1 2 1
Para que um programa C# do tipo “Windows Forms Application” receba um ou mais parâmetros da linha de comando, a assinatura do método Main pode ser especificada como:
static int Main(args[])
Main(string[0] args)
static int Main(string[] args)
static int Main(string[])
static Main(string() args)
Assinale a alternativa que indica a maneira correta de se obter, em C#.NET, o número de elementos presentes em um ArrayList chamado Lista.
Lista.Index
Lista.Size
Lista.Count
Lista.Capacity
Lista.Lenght
Considere a classe Pessoa definida num programa C#.
class Pessoa
{
private string nome = "---";
/
public string nome
{
get
{
return nome;
}
. . .
}
}
A maneira correta para expor a propriedade nome para escrita é:
set (string value)
{
nome = value;
}
set (string value)
{
nome = &value;
}
set
{
nome = value;
}
set (string x)
{
nome = x;
}
set (byref string value)
{
nome = &value;
}
A herança entre classes em C#, define-se utilizando o caractere:
#
:
/
$
@
Observe o seguinte trecho de código C##.
bool x = true;
int m = 0;
for (int a = 1; x; a++)
{
m++;
if (m % 10 == 0)
{ x = false;
}
}
Console.WriteLine(m);
O valor apresentado pelo comando Writeline é:
0
1
9
10
11
Sobre a linguagem de programação C#.NET, analise as assertivas abaixo.
I. A linguagem de programação C#.NET permite o uso de caracteres acentuados em identificadores de classes.
II. Existem programas em C#.NET que não possuem definições de classe realizadas pelo programador.
III. 8prova é um nome de identificador válido em programas criados com a linguagem de programação C#.NET.
É correto o que se afirma em
I e III, apenas.
II e III, apenas.
II, apenas.
I, apenas.
I, II e III.
Na linguagem de programação C#, o modificador de acesso que permite que os membros de uma classe sejam visíveis por membros de outras classes, derivadas ou não, é o
global.
private.
public.
protected.
virtual.
Na Linguagem C#, pode-se lançar uma exceção, de modo explícito, por meio do uso da instrução:
except.
jumpex
excdef.
throw.
Observe o trecho inicial, criado no Visual Studio 2010 Ultimate, para uma aplicação de console escrita em C#.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
...
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
}
}
}
A diretiva using.System.Linq refere-se a um conjunto de padrões e artefatos destinados à:
criação e utilização de relatórios;
realização de consultas e atualizações de dados;
criação e utilização de expressões regulares;
comunicação remota direta com outras aplicações C#;
identificação e utilização de Web Services.