Buscar

Compilado de Provas de Topicos Especiais de Programação Orientada a Objetos - UNIP EAD

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 15 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 15 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 9, do total de 15 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

MUTIPLA ESCOLHA
P) Considere as seguintes classes: 
Assinale a alternativa que apresenta a saída correta gerada quando o programa é executado:
Cenourinha, cebolinha, tomatinho
Cenourinha, cebolinha, cebolinha
Tomatinho, tomatinho, tomatinho
Cenourinha, cenourinha, cenourinha
Cebolinha, cebolinha, cebolinha. 
P) Considere as seguintes classes:
Quais são os atributos que a Classe Filha herda da Classe Pai. 
Todos
atributoPrivado, atributooProtegido, atributoPublico
atributoPadrao, atributoProtegido, atributoPublico
atributoProtegido e atributoPublico
Apenas atributoPublico
P) Considere as seguintes classes:
Quais são os atributos que a Classe Filha herda da Classe Pai. 
Todos
atributoPrivado, atributooProtegido, atributoPublico
atributoPadrao, atributoProtegido, atributoPublico
atributoProtegido e atributoPublico
Apenas atributoPublico
P) Considere as seguintes classes: 
E agora, considere o seguinte método de outra classe: 
Assinale a alternativa correta:
Para que possa utilizar o objeto roupa, ele deve ser instanciado antes: roupa = new Roupa()
O método não deve ser static, palavra reservada para se definir o método principal de um programa.
Para que a saída de texto funciona, a variável texto deve estar entre aspas: System.out.printIn(“texto”);
Para que o objeto roupa possa ser usado no método, o tipo do método deve ser trocado de void para Roupa.
O método não apresenta erros e imprime os dados de um objeto da classe Roupa. 
P) Considere as duas classes em Java abaixo: 
Assinale a alternativa correta:
O código está correto e ira exibir “Esta é uma mensagem padrão”.
O código está correto e ira exibir “Olá mundo de novo”.
O código apresenta erros: o método imprime foi sobrescrito e não recebe nenhum parâmetro.
O código apresenta erros: o método imprime foi declarada novamente na classe Classe2 que herda da classe Classe1, o que é um erro. Deve-se declarar um método com um nome diferente
O código apresenta erros: para executar o método imprime da classe Classe2 deve-se antes instanciar um objeto da classe Classe2. A seguir, pode-se chamar o método imprime() a partir desse objeto. 
P) Considere o seguinte código em Java e julgue as afirmativas abaixo: 
I – O código acima apresenta uma interface gráfica, capaz de receber o valor 8 a partir do metodo2() quando executado pelo usuário.
II – O código apresenta uma interface com erros, pois uma interface não pode defini atributos (linha 5) nem métodos concretos (linha 9 e 11).
III – O código apresenta uma interface com erros, pois o metodo1() na linha 7 é declarado com um ponto e virgula sem um bloco de implementação.
Assinale a alternativa correta:
Apenas I e II estão corretas
Apenas II e III estão corretas
Apenas I e III estão corretas
Todas estão corretas
Apenas uma afirmativa esta correta. 
P) Considere o seguinte programa e julgue as afirmativas abaixo:
I – O programa exibe o resultado 36 como um número inteiro.
II – Na linha 9, o programa realiza a soma i+j com números de ponto flutuante e dupla precisão, então converte o resultado para int, que, em seguida, é armazenado na variável soma.
III – A conversão de tipos para int na linha 9 é desnecessária pois é possível armazenar o resultado da soma, que é um double, em uma variável de menor capacidade int. 
Assinale a alternativa correta:
Apenas I e II estão corretas
Apenas II e III estão corretas
Apenas I e III estão corretas
Todas estão corretas
Apenas uma afirmativa está correta. 
P) Considere o seguinte programa e julgue as afirmativas abaixo
I – O programa apresenta erros, pois o tipo inteiro em Java é int, não integer.
II – O programa não apresenta erros, mas tem um desempenho baixo, pois ele utiliza instâncias das classes wrapper integer ao invés do tipo primitivo int. 
III – O programa não apresenta erros e sua execução gera a saída 36.
Assinale a alternativa correta:
Apenas I e II estão corretas
Apenas II e III estão corretas
Apenas I e III estão corretas
Todas as afirmativas estão corretas
Apenas uma afirmativa está correta. 
P) Considere o seguinte programa
Considerando que o usuário digita o número 3 na primeira caixa de mensagem e 5 na segunda, assinale a alternativa correta. 
O código apresenta erros, pois o usuário deve digitar um número, mas ele está sendo armazenado em variáveis de tipo string. 
O código apresenta erros, pois na linha em que a mensagem é exibida para o usuário, uma soma é feita com duas variáveis de tipo String. Só é possível somar variáveis de tipo numéricos.
O programa irá apresentar a mensagem “A soma dos dois números é 8”.
O programa irá apresentar a mensagem “A soma dos dois números é 35”.
O programa irá apresentar a mensagem “A soma dos dois números é numero1numero2”.
P) Considere o seguinte programa
O código apresenta erros, pois o método getA() na linha 10 deve ser marcado como abstract.
O código apresenta erros, pois o método metodo1() na linha 8 não apresenta código e não deve ser terminado com ponto e vírgula.
O código apresenta erros, pois uma classe abstrata não deve definir atributos
O código apresenta erros, pois uma classe abstrata deve obrigatoriamente herdade de uma classe concreta.
O código não apresenta erros. 
P) Considere o seguinte trecho de código em Java:
Assinale a alternativa correta:
O código está correto e irá exibir o valor 2.0
O código apresenta erros: não é possível atribuir variáveis de tipos diferentes sem que se faça um cast para a conversão de tipos.
O código apresenta erros: não é possível atribuir variáveis de tipos de menor capacidade em variáveis de tipo de maior capacidade sem que se faça um cast para a conversão de tipos.
O código apresenta erros: não é possível atribuir variáveis de tipos inteiros a variáveis de tipos de ponto flutuantes sem que se faça um cast para a conversão de tipos.
O código apresenta erros: uma variável de tipo byte só pode receber os valores 0 ou 1. 
P) Qual das alternativas abaixo apresenta uma declaração correta de um array? 
Array i – new array
Int array i = new int array
Int [5] i = new int [5];
Int [5] i = new int [];
Int [] i = new int [5];
P) Assinale a alternativa correta sobre Intent em aplicativos Android: 
É um mecanismo que permite que o aplicativo se comunique com o sistema operacional e com outros aplicativos.
É o conjunto onde recursos do sistema operacional que o aplicativo utiliza. Caso ele seja publicado na loja de aplicativos, é desse conjunto que é elaborada a lista de recursos que o aplicativo requer acesso e que o usuário precisa aceitar que sejam utilizados.
É a intenção do aplicativo. Caso ele seja publicado na loja de aplicativos, é do intente que são extraídas as informações da descrição do aplicativo a serem exibidas na loja.
È o mecanismo que permite que o sistema operacional e outros aplicativos indiquem sua intenção de uso para o aplicativo. Desta forma é possível a comunicação, por exemplo, do Tweeter com o aplicativo.
É o mecanismo que o aplicativo utiliza para gravar seus dados no banco de dados, promovendo sua intenção de persistir os seus dados em um meio não volátil. 
P) Assinale a alternativa correta sobre Services em aplicativos Android: 
É um componente que permite que um aplicativo utilize webservices
É um componente que permite que o aplicativo realize tarefas em segundo plano
É um componente que permite que o aplicativo implemente serviços de webservices para outros aplicativos no próprio dispositivo.
É um componente que permite que o aplicativo utilize os serviços disponibilizados pelo sistema operacional, como a câmera e o receptor GPS.
É um componente que permite que o aplicativo realize suas tarefas. É com esse componente que realizamos a camada de negócios de uma arquitetura MVC 
P) Julgue as afirmativas abaixo sobre o desenvolvimento de aplicativos para Android:
I – A logica para instanciação da atividade principal do aplicativo deve ser feita no método main(),conhecido como “inflar” a interface.
II – Em geral, cada interface gráfica é implementada em uma atividade do aplicativo.
III – Um aplicativo Android pode ser testado no sistema de desenvolvimento, com o uso de emuladores em maquinas virtuais, assim como em um dispositivo Android físico. Em ambos os casos, é possível realizar a depuração (debug) em tempo de execução. 
Assinale a alternativa correta:
Apenas a I e II estão corretas
Apenas II e III estão corretas
Apenas I e III estão corretas
Todas estão corretas
Apenas uma afirmativa está correta; 
P) Assinale a alternativa correta sobre os Broadcast Receivers em aplicativos Android 
São mecanismos que permitem criar aplicativos capazes de se conectar a transmissões de internet, como webcasts e rádios digitais
São mecanismos que permitem que o aplicativo envie transmissões de dados para o sistema operacional e para outros aplicativos
São mecanismos que permitem que o aplicativo transmita suas atividades para o usuário. E o framework encapsula a exibição, a interação, a persistência e a lógica do sistema
São mecanismos que permitem que o aplicativo receba informações do sistema operacional (como bateria fraca e fone de ouvido conectado), assim como informações de outros aplicativos.
São mecanismos que permitem que o aplicativo realize a transmissão de seus dados para um meio persistente. 
P) Assinale a alternativa correta sobre as views em aplicativos Android.
Elas são as diferentes versões de uma activity, desenvolvidas para as diferentes soluções de tela disponíveis para os diversos tipos diferentes de dispositivos Android.
Elas são modalidades de consulta de dados em brancos de dados que podem ser apresentados em uma activity após a sua devida formatação.
São componentes de interface gráfica que podem ser adicionados a uma activity
São arquivos de configuração em XML que definem o leiaute de uma activity
São eventos que são lançados quando o usuário utiliza alguma interação com a activity. 
P) Assinale a alternativa correta sobre o conceito de escopo de membros de classe:
Escopo é a definição das fronteiras do sistema. O escopo indica ao analista quais são as reponsabilidades de um sistema e quais são as pessoas e os sistemas que irão interagir com o sistema, essas pessoas e sistema são chamados de atores no paradigma orientado a objetos.
Escopo indica quais são os modificadores de acesso dos membros das classes. O paradigma orientado a objetos define quatro escopos: privado, protegido, padrão e público.
Escopo é o conjunto de classes relacionadas por herança, com as quais é possível realizar o polimorfismo de classes
Escopo é o conjunto de classes reunidas em um conjunto logico chamado de pacote. Dessa forma, se uma classe de um escopo precisa das funcionalidades de outra classe em outro escopo, ela deve antes importa-la com a palavra reservada import.
Escopo indica se o membro (atributo ou método) pertence a classe ou aos seus objetos. A situação padrão é o escopo de objeto e não é indicado por qualquer anotação. Já o escopo de classe e indicado pela palavra reservada static. 
P) Quando precisamos utilizar valores de tipos números, é valido afirmar que:
Podemos armazenas o valor de uma variável de menor capacidade em outra de maior capacidade 
Podemos armazenar o valor de uma variável de maior capacidade em outra de menor capacidade
A conversão de tipos faz arredondamento de valores
A conversão por classes wrapper faz truncamento de valores
Podemos receber dados números do usuário usando a classe JOptionPane, 
P) Julgue as afirmativas abaixo sobre as interfaces gráficas em Java:
I – Para se criar uma janela de aplicativo na área de trabalho do usuário, costumamos criar uma classe que herda da classe JFrame do pacote swing.
II – Um objeto da classe JButton cria um botão pressionavel em um contêiner gráfico, como o JFrame. Quando o usuário clica nesse botão, o método on_click_JButton() é executado.
III – Um objeto da classe JLabel costuma ser utilizado para exibir informações estáticas e não interativas em uma interface gráfica.
Apenas I e II estão corretas
Apenas II e III estão corretas
Apenas I e III estão corretas
Todas estão corretas
Apenas uma afirmativa está correta. 
P) Assinale a alternativa correta:
Um método construtor deve sempre ter como tipo de retorno void.
Um método construtor pode ter ou não ter parâmetros.
Sempre devemos declarar um método construtor.
O método construtor não pode ser sobrecarregado.
Uma classe pode ter vários métodos construtores, desde que eles tenham nomes diferentes.
P) Assinale a alternativa correta:
Para se executar o programa em Java é necessário ter o JRE (Java Runtime Enviorment – Ambiente de Execução Java) instalado.
Quando um desenvolvedor utiliza uma IDE (Ambiente de Desenvolvimento Integrado) como o Eclipse e o NetBeans, ele terá ao seu alcance muitas ferramentas que facilitam seu trabalho, entretanto sistemas desenvolvidos por ele só poderão ser executados no ambiente do cliente dentro da mesma IDE.
Quando utilizamos uma IDE (Ambiente de Desenvolvimento Integrado), como o Eclipse o NetBeans, não precisamos utilizar o JDK (Java Development Kit – Kit de Desenvolvimento Java). Afinal as IDEs são capazes de compilar e depurar código Java, dispensando o JDK.
Não é possível programa em Java utilizando apenas JDK (Kit de Desenvolvimento Java). É necessário também escolher alguma IDE (Ambiente de Desenvolvimento Integrado).
A linguagem Java é considerada multiplataforma porque ela pode ser compilada em muitas plataformas permitindo que os desenvolvedores escolham seu ambiente de desenvolvimento otimizando o processo de desenvolvimento de software. 
P) Assinale a alternativa correta sobre as exceções: 
Uma exceção é um erro de codificação sinalizado pela IDE com uma linha tracejada vermelha sob o erro. 
Uma exceção é uma situação que deve ser evitada pelo programador.
Uma exceção é uma situação comum para qualquer sistema e o programador deve preparar o sistema para que ele se recupere dela.
É possível criar um sistema em que nunca ocorra uma exceção e essa é uma boa pratica de programação.
O compilador identifica as possíveis exceções e as sinaliza no código com uma linha tracejada amarela sob a exceção. 
P) Julgue as seguintes afirmações sobre as classes wrapper:
I – Uma classe wrapper pode instanciar objetos capazes de armazenas um dado do mesmo tipo primitivo que é associado à classe. Por exemplo, um objeto da classe Byte pode armazenar um dado de uma variável do tipo byte.
II – Objetos de classes wrapper podem ser usados em substituição aos seus tipos primitivos associados com vantagens, pois além de armazenar dados, esses objetos ainda apresentam métodos de conversão de dados para outros tipos, conversão que é feita com arredondamento. Por isso, é uma boa pratica de programação o uso de classes wrapper.
III – Uma das principais utilidades das classes wrapper é a conversão de tipos de dados para todos os demais tipos, conversão que é feita com arredondamento, não com truncamento que ocorre com a conversão de tipos (type cast).
Assinale a alternativa correta:
Apenas I e II estão corretas
Apenas II e III estão corretas
Apenas I e III estão corretas
Todas estão corretas
Apenas uma afirmativa está correta.
P) Assinale a alternativa que faz uma afirmação correta sobre as interfaces gráficas: 
Uma interface gráfica deve ser implementada em uma interface, não em um class.
Um objeto de uma interface gráfica pode ser passados como o parâmetro pai do método JOptionPane.showMessageDialog().
Não é possível criar uma interface gráfica sem o auxilio de um editor de interfaces gráficas
Sempre podemos editar o código gerado por um editor de interfaces gráficas. 
Não é possível utilizar em uma mesma interface gráfica tanto o editor de interfaces quanto a criação de interfaces por código. 
P) Com relação à orientação a objetos e ao polimorfismo, jugue as afirmativas abaixo:
I – Uso de orientação a objetos incentiva oprogramador e o analista a fazerem reuso de código.
II – Sistemas que usam corretamente o polimorfismo costuma ser mais fáceis de desenvolver e tem sua manutenção mais simples.
III – A orientação a objetos permite a criação de sistemas bem mais complexos do que o paradigma estruturado permite. 
Assinale a alternativa correta:
Apenas I e II estão corretas
Apenas II e III estão corretas
Apenas I e III estão corretas
Todas estão corretas
Apenas uma afirmativa está correta.
 
P) Uma das características da linguagem Java é que ela é uma linguagem multithread. Sobre multithread é correto afirmar que:
É uma técnica que permite que diferentes partes do programa sejam executadas simultaneamente.
É uma técnica que só traz resultados quando executada em sistemas com mais de um processador. 
É uma técnica útil para trazer capacidades multitarefas a sistemas de processamento em lote
É uma técnica que só pode ser utilizada em sistemas de aplicativos distribuídos.
É uma técnica que permite que mais de um desenvolvedor trabalhe no mesmo sistema 
P) Julgue as afirmativas abaixo sobre classes abstratas e interfaces:
I – Uma classe abstrata pode definir atributos, método concretos e métodos abstratos. 
II – O uso de métodos abstratos é recomendado para garantir que as subclasses sobrescrevam os métodos necessários
III – Uma interface deve sempre considerar as recomendações de estilo vigentes para uso de elementos gráficos como botões, caixas de texto, rótulos etc. 
Assinale a alternativa correta: 
Apenas I e II estão corretas.
Apenas II e III estão corretas
Apenas I e III estão corretas
Todas estão corretas
Apenas uma alternativa está correta. 
DISERTATIVAS
P). Observe o seguinte trecho de código:
Explique qual é o significado dos erros mostrados pela IDE no código e como eles podem ser corrigidos. 
Avisa sobre a existência de dois métodos iguais, de mesmo nome e que recebe o mesmo tipo de valor. 
Podemos corrigir modificando o nome de um dos métodos, ou apenas removendo um deles já que ambos executam a mesma ação. 
P). O bloco try-catch é usado para fazer o tratamento de exceções. Explique o que é uma exceção e qual é a importância de fazer o tratamento de exceções. 
Exceção é quando há possibilidade de ocorrer erros imprevistos durante a execução de uma rotina, em caso de ocorrencia de entrada de dados que alterem o fluxo normal da execução de um programa. 
É importante tratar essas exceçoes para que possamos detectar e manipular essas entradas erradas, assim asinalando que a rotina não deve continuar a execução, quando por exemplo, os argumentos de entrada não são validos, evitando assim a paralização do sistema e solicitando ao usuario inserir novamente os dados de maneira correta.. 
P). Uma das principais razoes para o sucesso do paradigma orientado a objetos é a possibilidade de se utilizar polimorfismo. Explique brevemente ao menos duas formas de polimorfismo. 
Sobrecarga: onde podemos criar quantos métodos quisermos em uma classe com o mesmo nome, desde que eles tenham uma lista de parâmetros que seja diferente em quantidade, em tipo ou em quantidade e tipo. 
Sobrescrita: quando modificamos o método de uma classe filha herdado de uma classe pai para que ele se comporte de maneira desejada. 
P). Um aplicativo programado em uma linguagem tradicional, como C++, o Pascal e o Cobol, pode ter o seu código fonte escrito em simples editor de arquivos-texto, que é compilado para linguagem de maquina para a plataforma a qual se destina, O que é necessário para programar usando a linguagem Java? E o que é necessário para executar um programa compilado em Java? 
Para se desenvolver em Java, o mínimo necessário é instalar o Software Development Kit (SDK Java SE)
E para executar um programa compilado em Java é necessário o Java SE Runtime Environment (JRE)
P). Ao se desenvolver uma interface gráfica em Java usando os componentes gráficos do pacote swing, utilizamos uma serie de classes para realizar tarefas comuns a essa atividade, como o JFrame, JTextField, JLabel e JButton, entre outras. Explique brevemente o que fazem ao menos três classes do pacote swing. 
Jbutton adiciona botões na aplicação.
JLabel adiciona um campo de texto estático. 
JTextField adiciona um campo de inserção de informações. 
P). Um dos aspectos importantes da orientação a objetos é a ocultação. Quando projetamos uma classe, queremos que ela realize alguma tarefa, seja para nós mesmo, seja para outros programadores que trabalham no mesmo sistema. Quem usa essa classe não precisa saber como a classe realiza a sua tarefa, ela só precisa saber como usa-la. Que papel os modificadores de acesso desempenham na ocultação de classes? 
Utilizamos os modificadores de acesso para encapsular atributos, ou seja, proteger os atributos tornando-os inacessíveis, permitindo o acesso a eles por métodos acessos públicos que fazem a consistência de dados. 
P). Um aplicativo para dispositivos moveis com Android segue uma estrutura bastante definida, assim como um aplicativo para ambientes operacionais gráficos. Em Android são definidas as estruturas Activity, Intent, Broadcast Receivers e Services. Explique resumidamente o que é cada uma delas 
Activity: responsável por controlar os eventos dos aplicativos.
Intent: Mecanismos que permite que o aplicativo se comunique com o sistema operacional e com outros aplicativos.
Broadcast Receivers: Mecanismo que permite que o aplicativo receba informações do sistema operacional, assim como informações de outros aplicativos. 
P). Um aspecto da Tecnologia da Informação que nunca deve ser desprezado é a tolerância a falhas. Este é um conceito que , se aplicado corretamente, tem o potencial de tornar os sistemas mais resistentes a situações inesperadas, das mais corriqueiras às mais devastadoras. Há varias maneiras de se implementar a tolerância a falhas, como aplicação de redundância (de rede, de servidores, de banco de dados), o uso de frameworks, entre outros. Mas a própria linguagem Java oferece uma ferramenta capaz de melhorar a tolerância a falhas por meio de código, sem o uso de tecnologias ou infraestrutura diferenciada. Que ferramenta é essa e como ela melhora a tolerância a falhas? 
Pode-se utilizar o bloco try-catch ou try-catch-finally.
Onde no try implementa o codigo que pode provar uma exceção e no catch é implementado o codigo que sera executado caso essa exceção ocorra.
Ela impede que o sistema fique travado no caso de ocorrer algum problema, aumento assim a tolerância a falhas do sistema. 
P). A tecnologia Java para desenvolvimento de software é uma das mais importantes em uso no mercado, tendo aplicações em sistemas dos mais variados tamanhos e aplicações. Uma das principais razoes para o sucesso do Java é o fato de essa tecnologia ser multiplataforma. Assim, explique brevemente.
a) uma plataforma
b) uma linguagem multiplataforma
c) como o Java consegue ser multiplataforma 
A – Plataforma é o conjunto formado por um computador e o sistema operacional instalado nesse computador. 
B – Linguagem muliplataforma quer dizer que o programa feito e compilado em determinada plataforma poderá ser executado nessa plataforma e também em todas as demais plataformas que dão suporte a linguagem
C – Isso é possível porque o código-fonte Java é compilado para um bytecode, que a partir daí esse bytecode é interpretado pela máquina virtual na plataforma de execução
P). Sistemas computacionais devem ser capazes de armazenas e realizar operações com dados. Quando a quantidade de dados começa a se tornar grande, o uso apenas de variáveis comuns começa a se tornar incomodo e ineficiente. Nessa situação, pode ser interessante o uso de arrays e coleções com ArrayList. O que são arrays e coleções? Quais as suas diferenças e quando é recomendado o uso de cada um deles? 
Array é um conjunto de variáveis de mesmo tipo, recomendado quando a quantidade deobjetos a ser armazenados já está definido. 
Coleção é um conjunto de variáveis, semelhante a um array, mas que pode ter o seu tamanho modificado conforme a necessidade, recomendado quando não se sabe quantos elementos serão necessários. 
P). Quando é iniciado um projeto de aplicativo Android, deve-se definir qual é o nível mínimo requerido de SDK (minimun required SDK). O que significa o nível mínimo de SDK? Como devemos escolher esse nível mínimo e qual é o impacto dessa escolha para o desenvolvedor? 
Nivel mínimo necessário para que o aplicativo funcione. 
Devemos levar em consideração uma versão em que não seja necessário abrir mão de recursos importantes e também uma versão não muito alta para que o aplicativo seja compatível com uma maior variedade de dispositivos. 
P). Considere a classe UmaClasse declarada no pacote umPacote abaixo:
Agora considere a classe OutraClasse abaixo, que especializada a classe UmaClasse e que foi declarada no pacote outroPacote:
Quais são os atributos presentes na classe OutraClasse que foram herdados da classe UmaClasse? 
Todos os atributos da classe pai são herdados para a classe filha, porém atributos com visibilidade private e padrão (sem modificador), apesar de serem herdados, não são acessíveis na classe filha. O private nunca é acessível e o padrão não é acessível nesse caso por não fazer parte do mesmo pacote. 
P). Considere a ClassePai abaixo:
Considere também a ClasseFilha abaixo, a qual herda da ClassePai:
Por fim, qual sera a saída gerada pela execução do código abaixo? 
 
Eu sou a classe filha. 
P). Observe o código abaixo:
Esse código apresenta um erro. Reescreva o código corrigindo o erro de modo que o método() seja chamado de dentro de main() e execute a impressão no console corretamente. 
package pacote;
public class Classe {
	Private void metodo() {
		System.out.println(“Olá mundo!”);
}
Public static void main(String[] args) {
	Classe c = new Classe();
	c.método();
}
}
P). Aos se projetar um sistema que utiliza classes hierárquicas para tirar vantagem do polimorfismo, muitas vezes precisamos escrever métodos em classes que existem apenas para serem usados polimorficamente. Estes métodos possuem implementações que nunca são executadas. Para resolver esse problema, a orientação a objetos oferece classes abstratas e interfaces que apenas definem assinaturas de métodos, sem implementação. Apresente ao menos uma vantagem do uso de classes abstratas e interfaces. 
Uma vantagem para classes abstratas é que força a hierarquia para todas as sub-classes e as interfaces podem ser usadas para implementar heranças múltiplas.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes