Buscar

Programação Orientada a Objetos atividade 2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Pergunta 1
	Nosso algoritmo é construído por meio de comando de controle de fluxo e repetições. Sabemos que, para realizarmos esses comandos, podemos fazer uso das instruções if-else, switch-case, para tomada de decisões, como também os comandos for, while, do-while, para comandos de repetições. Vamos analisar o trecho de código abaixo:
class Main { 
    public static void main(String[] args) {       
       int cont = 0;   
       do {       
          cont = cont+1;       
          if(num == cont)   break;      
        }
        while(num % cont == 0);         
        System.out.print(cont);   
    }
}
Qual será a saída do algoritmo?
		Resposta Selecionada:
	a. 
5.
	Resposta Correta:
	a. 
5.
	Feedback da resposta:
	A resposta está correta. Vimos que, quando utilizamos o do-while, garantimos que as instruções dentro do bloco deverão ser executadas, pelo menos uma vez. Após isso, é realizado a verificação de condição da estrutura.
Pergunta 2
0,25 em 0,25 pontos
	
	
	
	Sabemos que, em sua estrutura, a interface Map permite que cada elemento armazene duas informações. Uma delas será a chave, na qual não poderá ser duplicada, ou seja, apenas um elemento daquela coleção poderá ter aquela informação. A outra informação é chamada de valor, essa poderá ser encontrada com a mesma informação em outro elemento da coleção. Para utilizarmos essa interface, podemos implementar por LinkedHashMap, HashMap ou TreeMap. 
O programa abaixo está implementado com HashMap, analise:
public static void main(String[] args){ 
    Map<Integer,String> cliente = new HashMap<Integer,String>( ); 
    cliente.put(123, “Maria”);
    cliente.put(452, “João”);
    cliente.put(426, “Gabriel”);
    cliente.put(147, “Ana”);
    String cli = cliente.get(452);
    cliente.remove(147);
    Boolean verificar = cliente.containsKey(123);
    System.out.println(cli);
    if(verificar) { 
        System.out.println(“OK”);
    }cliente.clear();
} 
Após análise do código, qual das opções abaixo corresponde à execução do código?
	
	
	
	
		Resposta Selecionada:
	e. 
A instrução System.out.println(cli); imprime o valor “João”.
	Resposta Correta:
	e. 
A instrução System.out.println(cli); imprime o valor “João”.
	Feedback da resposta:
	A resposta está correta. De acordo com a interface Map, utilizando o método cliente.get do programa e passando como parâmetro a chave 452, o nosso programa deverá retornar, após realizar a busca na coleção, o valor “João”.
	
	
	
Pergunta 3
0 em 0,25 pontos
	
	
	
	Sabemos que, após criadas nossas classes, precisamos elaborar uma relação na qual os objetos de classes diferentes consigam se comunicar. Essa comunicação é chamada de relação lógica e pode ser do tipo associação, composição e agregação. Sobre esse tema, analise as afirmações abaixo:
Associação significa criar uma conexão entre classes, fazendo com que seus objetos tenham uma relação.
A associação é realizada, após ambos os atributos forem inicializados. 
Agregação é utilizada quando uma classe precisa utilizar atributos de outra classe.
Composição é uma variação da relação agregação, sua única diferença se dá pelo fato de que a classe responsável por criar as outras classes for destruída, as outras classes serão inutilizáveis. 
De acordo com as afirmações apresentadas, assinale a alternativa correta.
	
	
	
	
		Resposta Selecionada:
	b. 
I, II, III e IV.
	Resposta Correta:
	d. 
I, II e IV.
	Feedback da resposta:
	Sua resposta está incorreta. Sugerimos a releitura do capítulo. Vimos que existem semelhanças entre as relações de comunicação. Porém, é necessário saber identificar suas diferenças peculiares.
	
	
	
Pergunta 4
0 em 0,25 pontos
	
	
	
	Sabemos que, após criadas nossas classes, precisamos elaborar uma relação na qual os objetos de classes diferentes consigam se comunicar. Essa comunicação é chamada de relação lógica e pode ser do tipo associação, composição e agregação. Sobre esse tema, analise as afirmações abaixo:
    I. Associação significa criar uma conexão entre classes, fazendo com que seus objetos tenham uma relação.
    II. A associação é realizada, após ambos os atributos forem inicializados. 
    III. Agregação é utilizada quando uma classe precisa utilizar atributos de outra classe.
    IV. Composição é uma variação da relação agregação, sua única diferença se dá pelo fato de que a classe responsável por criar as outras classes for destruída, as outras classes serão inutilizáveis. 
De acordo com as afirmações apresentadas, assinale a alternativa correta.
	
	
	
	
		Resposta Selecionada:
	c. 
I, II, III e IV.
	Resposta Correta:
	a. 
I, II e IV.
	Feedback da resposta:
	Sua resposta está incorreta. Sugerimos a releitura do capítulo. Vimos que existem semelhanças entre as relações de comunicação. Porém, é necessário saber identificar suas diferenças peculiares. 
	
	
	
Pergunta 5
0 em 0,25 pontos
	
	
	
	Quando falamos sobre encapsulamento, podemos achar que encapsular significa apenas ocultar determinadas informações de implementação. Apesar de ocultar, ser um conceito realizado pelo encapsulamento, não significa que ocultaremos informações de uma classe para o restante do código. Na verdade, quando encapsulamos, estamos restringindo o acesso apenas a alguns atributos e métodos de uma classe/objeto para as outras classes/objetos. Porém, ainda conseguimos acesso a essas informações ocultas pelos métodos de leitura e escrita.
Sobre encapsulamento, escolha a alternativa correta. 
	
	
	
	
		Resposta Selecionada:
	d. 
Utilizar protected significa permitir acesso às informações apenas de suas subclasses.
	Resposta Correta:
	b. 
O atributo deverá ser declarado sempre como privado, pois a visibilidade dele é controlada pelos métodos.
	Feedback da resposta:
	Sua resposta está incorreta. Sugerimos a releitura do capítulo. A relação de uma classe com seus objetos, deve sugerir quais atributos e comportamentos podem ser compartilhados e executados em outra classe. Para isso, precisamos saber identificar qual o tipo dos nossos atributos. 
	
	
	
Pergunta 6
0 em 0,25 pontos
	
	
	
	O Java possui uma API que possibilita agrupar um conjunto de objetos. Dessa forma, por intermédio de suas interfaces, podemos realizar algumas operações básicas nos objetos contidos nessa coleção. Estamos falando sobre a API Collections, um conjunto bem modelado de interfaces e classes, que representam um grupo de objetos de uma mesma unidade. Ou seja, utilizando coleções, temos acessos a essas interfaces (List, Queue, Map, Set) que possuem em sua implementação, métodos com operações básicas.
Operações estas que podem ser de inserção, remoção, ordenação e outros.Sobre a API Collections, marque a alternativa correta.
	
	
	
	
		Resposta Selecionada:
	e. 
A interface Map permite, em sua estrutura, que os elementos sejam duplicados em suas duas informações (chave e valor).
	Resposta Correta:
	c. 
Na interface Queue, podemos inserir elementos duplicados
	Feedback da resposta:
	Sua resposta está incorreta. Sugerimos a releitura do capítulo. Vimos que cada interface existente na API Collections se comporta de maneira diferente. Algumas implementações permitem ordenação, enquanto outras não.
	
	
	
Pergunta 7
0,25 em 0,25 pontos
	
	
	
	Sabemos que o paradigma de orientação a objeto nos ajuda a programar de maneira organizada e resolve vários problemas enfrentados pela programação estruturada. Para programar de maneira orientada a objeto, fazemos o uso de alguns conceitos. Por exemplo, classe, objetos, atributos e métodos. Sabendo disso, analise o código abaixo:
class Conta {     
    public int numero;   
    private double saldo;   
    private String nomeCliente;
   
    Conta( ) {       
         System.out.println("Iniciando conta");   
     }   
    public void realizarSaque(doublevalor) {       
        this.saldo = this.saldo - valor;   
    }   
    public double verSaldo() {       
        return this.saldo;    }
    }
    class SistemaBanco {   
        public static void main(String[] args) {       
           Conta minhaConta = new Conta();       
           minhaConta.numero = 1;       
           minhaConta.saldo = 100;       
           minhaConta.nomeCliente = "Eduardo";       
           minhaConta.RealizarSaque(10);       
           System.out.println(minhaConta.verSaldo());   
           }
   }
Qual das alternativas abaixo é verdadeira?
	
	
	
	
		Resposta Selecionada:
	c. 
Não é possível acessar o atributo saldo e nomeCliente na função main, pois esses atributos são privados.
	Resposta Correta:
	c. 
Não é possível acessar o atributo saldo e nomeCliente na função main, pois esses atributos são privados.
	Feedback da resposta:
	A resposta está correta. Como vimos, a identificação de visibilidade dos atributos deve ser projetada de forma que não danifique o processo lógico do nosso programa. Portanto, como os atributos saldo e nomeCliente foram declarados como private, eles ficam inacessíveis na classe principal.
	
	
	
Pergunta 8
0,25 em 0,25 pontos
	
	
	
	Uma das características existente na programação orientada a objetos está relacionada com atribuições específicas quando formos declarar nossas variáveis. Podemos por exemplo, proteger um atributo interno do objeto contra modificações diretas. Sabemos que essas alterações devem ocorrer por meio de métodos adequados, criados para acesso e modificação desses atributos. Podendo ser do tipo private, public ou protect. Por exemplo, public int idade;private String nome;protect int cpf;
Quando utilizamos POO, podemos definir quais modificadores de acesso melhor se encaixam com nossos atributos. Quando decidimos colocar o modificar de acesso privado em um atributo, significa que:  
	
	
	
	
		Resposta Selecionada:
	d. 
este atributo privado somente é acessível aos objetos que fazem referência a esta classe;
	Resposta Correta:
	d. 
este atributo privado somente é acessível aos objetos que fazem referência a esta classe;
	Feedback da resposta:
	A resposta está correta. Quando declaramos um atributo com a visibilidade de private, este atributo somente poderá ser acessado pelos métodos internos desse objeto.
	
	
	
Pergunta 9
0 em 0,25 pontos
	
	
	
	Sabemos que, na linguagem Java, podemos atribuir o valor de um tipo de variável a outro tipo de variável. Ou seja, fazemos o casting com as variáveis. Porém, entendemos que, para realizarmos esse procedimento precisamos obedecer às regras do compilador, de forma que não ocasione um erro em nosso programa. Utilizamos casting de variáveis, de forma que nos possibilite declarar variáveis de um tipo de dado mais genérico e fazer essas variáveis referenciarem objetos de tipos de dado mais específico. Deixando o desenvolvedor com mais liberdade, quando construir a lógica do seu programa.Sabendo que precisamos obedecer a regra de conversão, analise as declarações de variáveis abaixo:
int d = (int) 5.1987;
float e = (float) 5.0;
int f = (int) 13.2;
double g = (int) 3.14
Qual das opções abaixo corresponde a um conjunto de impressões das variáveis declaradas? 
	
	
	
	
		Resposta Selecionada:
	c. 
System.out.println(f); //Imprime 13.2 e System.out.println(g); //Imprime 3.
	Resposta Correta:
	a. 
System.out.println(d); //Imprime 5 e System.out.println(e); //Imprime 5.
	Feedback da resposta:
	Sua resposta está incorreta. Sugerimos a releitura do capítulo. Quando estudamos as regras de conversão do casting, vimos que algumas conversões são realizadas automaticamente, como, por exemplo, do tipo short para int. Porém, precisamos ficar sempre atentos às regras para evitar erros.
	
	
	
Pergunta 10
0,25 em 0,25 pontos
	
	
	
	Quando vamos desenvolver um programa, sabemos que podemos optar por um dos dois paradigmas da programação: a Programação Estruturada e a Programação Orientada a Objetos. Apesar de suas similaridades e diferenças, para realizarmos um bom programa precisamos analisar qual programação é a mais adequada para aquele problema em questão. As principais diferenças entres esses paradigmas, é que a PE se baseia uma ideia de programação mais voltada ao pensamento de máquina, enquanto a POO se baseia em um pensamento de programação mais voltado ao pensamento humano.
Nesse contexto, analise as afirmações abaixo e identifique quais correspondem à programação orientada a objeto.
 
I. Consistem em identificar os objetos e as operações relevantes no mundo real.
II. O mapeamento desses problemas em representações abstratas no espaço de soluções.
III. Os mecanismos que compõem um programa podem ser identificados como seleção, sequência e iteração.
IV. Não existem objetos, pois são dados, e os dados possuem comportamentos que são considerados em separado.
 Agora, assinale a alternativa que apresenta a sequência correta de respostas.
	
	
	
	
		Resposta Selecionada:
	a. 
V, V, F, F.
	Resposta Correta:
	a. 
V, V, F, F.
	Feedback da resposta:
	A resposta está correta. O paradigma de orientação a objeto tenta retratar os conceitos do mundo real para a programação de uma forma mais abstrata. Dessa forma aprendemos uma lógica de identificar o que seriam nossos objetos e quais seriam seus atributos e comportamentos.

Outros materiais