Logo Passei Direto
Buscar

Compilado_de_Provas_de_Topicos_Especiais_de_Programacao_Orientada_a_Objetos_-_UNIP_EAD___Passei_Direto pdf1

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

<p>Impresso por Tarcisio Lima, E-mail tarcisiosiao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos</p><p>autorais e não pode ser reproduzido ou repassado para terceiros. 21/11/2023, 22:49:39</p><p>DISERTATIVAS</p><p>P). Observe o seguinte trecho de código:</p><p>Explique qual é o significado dos erros mostrados pela IDE no código e como eles podem ser corrigidos.</p><p>Avisa sobre a existência de dois métodos iguais, de mesmo nome e que recebe o mesmo tipo de valor.</p><p>Podemos corrigir modificando o nome de um dos métodos, ou apenas removendo um deles já que ambos</p><p>executam a mesma ação.</p><p>P). O bloco try-catch é usado para fazer o tratamento de exceções. Explique o que é uma exceção e qual é a</p><p>importância de fazer o tratamento de exceções.</p><p>Exceção é quando há possibilidade de ocorrer erros imprevistos durante a execução de uma rotina, em caso de</p><p>ocorrencia de entrada de dados que alterem o fluxo normal da execução de um programa.</p><p>É importante tratar essas exceçoes para que possamos detectar e manipular essas entradas erradas, assim</p><p>asinalando que a rotina não deve continuar a execução, quando por exemplo, os argumentos de entrada não</p><p>são validos, evitando assim a paralização do sistema e solicitando ao usuario inserir novamente os dados de</p><p>maneira correta..</p><p>P). Uma das principais razoes para o sucesso do paradigma orientado a objetos é a possibilidade de se utilizar</p><p>polimorfismo. Explique brevemente ao menos duas formas de polimorfismo.</p><p>Sobrecarga: onde podemos criar quantos métodos quisermos em uma classe com o mesmo nome, desde que</p><p>eles tenham uma lista de parâmetros que seja diferente em quantidade, em tipo ou em quantidade e tipo.</p><p>Sobrescrita: quando modificamos o método de uma classe filha herdado de uma classe pai para que ele se</p><p>comporte de maneira desejada.</p><p>P). Um aplicativo programado em uma linguagem tradicional, como C++, o Pascal e o Cobol, pode ter o seu</p><p>código fonte escrito em simples editor de arquivos-texto, que é compilado para linguagem de maquina para a</p><p>plataforma a qual se destina, O que é necessário para programar usando a linguagem Java? E o que é</p><p>necessário para executar um programa compilado em Java?</p><p>Para se desenvolver em Java, o mínimo necessário é instalar o Software Development Kit (SDK Java SE)</p><p>E para executar um programa compilado em Java é necessário o Java Runtime Environment (JRE) SE</p><p>Impresso por Tarcisio Lima, E-mail tarcisiosiao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos</p><p>autorais e não pode ser reproduzido ou repassado para terceiros. 21/11/2023, 22:49:39</p><p>P). Ao se desenvolver uma interface gráfica em Java usando os componentes gráficos do pacote swing,</p><p>utilizamos uma serie de classes para realizar tarefas comuns a essa atividade, como o JFrame, JTextField,</p><p>JLabel e JButton, entre outras. Explique brevemente o que fazem ao menos três classes do pacote swing.</p><p>Jbutton iciona botões na aplicação. ad</p><p>JLabel adiciona um campo de texto estático.</p><p>JTextField adiciona um campo de inserção de informações.</p><p>P). Um dos aspectos importantes da orientação a objetos é a ocultação. Quando projetamos uma classe,</p><p>queremos que e la realize alguma tarefa, seja para nós mesmo, seja para outros programadores que trabalham</p><p>no mesmo sistema. Quem usa essa classe não precisa s aber como a classe realiza a sua tarefa, ela só precisa</p><p>saber como usa-la. Que papel os modificadores de acesso desempenham na ocultação de classes?</p><p>Utilizamos os modificadores de acesso para encapsular atributos, ou seja, proteger os atributos tornando -os</p><p>inacessíveis, permitindo o acesso a eles por métodos acessos públicos que fazem a consistência de dados.</p><p>P). Um aplicativo para dispositivos moveis com Android segue uma estrutura bastante definida, assim como</p><p>um aplicativo para ambientes operacionais gráficos. Em Android são definidas as estruturas Activity, Intent,</p><p>Broadcast Receivers e Services. Explique resumidamente o que é cada uma delas</p><p>Activity: responsável por controlar os eventos dos aplicativos.</p><p>Intent: Mecanismos que permite que o aplicativo se comunique com o sistema operacional e com outros</p><p>aplicativos.</p><p>Broadcast Receivers: Mecanismo que permite que o aplicativo receba informações do sistema operacional,</p><p>assim como informações de outros aplicativos.</p><p>P). Um aspecto da Tecnologia da Informação que nunca deve ser desprezado é a tolerância a falhas. Este é um</p><p>conceito que , se aplicado corretamente, tem o potencial de tornar os sistemas mais res istentes a s ituações</p><p>inesperadas, das mais corriqueiras às mais devastadoras. Há varias maneiras de se implementar a tolerância a</p><p>falhas, como aplicação de redundância (de rede, de se rvidores, de banco de dados), o uso de frameworks, entre</p><p>outros. Mas a própria linguagem Java oferece uma ferramenta capaz de melhorar a tolerância a falhas por</p><p>meio de código, sem o uso de tecnologias ou infraestrutura diferenciada. Que ferramenta é essa e como ela</p><p>melhora a tolerância a falhas?</p><p>Pode-se utilizar o bloco try-catch ou try-catch-finally.</p><p>Onde no try implementa o codigo que pode provar uma exceção e no catch é implementado o codigo que sera</p><p>executado caso essa exceção ocorra.</p><p>Ela impede que o sistema fique travado no caso de ocorrer algum problema, aumento assim a tolerância a</p><p>falhas do sistema.</p><p>P). A tecnologia Java para desenvolvimento de software é uma das mais importantes em uso no mercado,</p><p>tendo aplicações em sistemas dos mais variados tamanhos e aplicações. Uma das principais razoes para o</p><p>sucesso do Java é o fato de essa tecnologia ser multiplataforma. Assim, explique brevemente.</p><p>a) uma plataforma</p><p>b) uma linguagem multiplataforma</p><p>c) como o Java consegue ser multiplataforma</p><p>A – Plataforma é o conjunto formado por um computador e o sistema operacional instalado nesse computador.</p><p>B – Linguagem muliplataforma quer dizer que o programa feito e compilado em determinada plataforma poderá</p><p>ser executado nessa plataforma e também em todas as demais plataformas que dão suporte a linguagem</p><p>C – Isso é possível porque o código-fonte Java é compilado para um bytecode, que a partir daí esse bytecode é</p><p>interpretado pela máquina virtual na plataforma de execução</p><p>Impresso por Tarcisio Lima, E-mail tarcisiosiao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos</p><p>autorais e não pode ser reproduzido ou repassado para terceiros. 21/11/2023, 22:49:39</p><p>P). Sistemas computacionais devem ser capazes de armazenas e realizar operações com dados. Quando a</p><p>quantidade de dados começa a se tornar grande, o uso apenas de variáveis comuns começa a se tornar</p><p>incomodo e ineficiente. Nessa situação, pode ser interessante o uso de arrays e coleções com ArrayList. O que</p><p>são arrays e coleções? Quais as suas diferenças e quando é recomendado o uso de cada um deles?</p><p>Array é um conjunto de variáveis de mesmo tipo, recomendado quando a quantidade de objetos a ser</p><p>armazenados já está definido.</p><p>Coleção é um conjunto de variáveis, semelhante a um array, mas que pode ter o seu tamanho modificado</p><p>conforme a necessidade, recomendado quando não se sabe quantos elementos serão necessários.</p><p>P). Quando é iniciado um projeto de aplicativo Android, deve-se definir qual é o nível mínimo requerido de</p><p>SDK (minimun required SDK). O que significa o nível mínimo de SDK? Como devemos escolher esse nível</p><p>mínimo e qual é o impacto dessa escolha para o desenvolvedor?</p><p>Nivel mínimo necessário para que o aplicativo funcione.</p><p>Devemos levar em consideração uma versão em que não seja necessário abrir mão de recursos importantes e</p><p>também uma versão não muito alta para que o aplicativo seja compatível com uma maior variedade de</p><p>dispositivos.</p><p>P). Considere a classe UmaClasse declarada no pacote umPacote abaixo:</p><p>Agora considere a classe OutraClasse abaixo, que especializada a classe UmaClasse e que foi declarada no</p><p>pacote outroPacote:</p><p>Quais são os atributos presentes na classe OutraClasse que foram herdados da classe UmaClasse?</p><p>Todos os atributos da classe pai são herdados para a classe filha, porém atributos com visibilidade private e</p><p>padrão (sem modificador), apesar de serem herdados, não são acessíveis na classe filha. O private nunca é</p><p>acessível e o padrão não acessível nesse caso por não fazer parte do mesmo pacote. é</p><p>Impresso por Tarcisio Lima, E-mail tarcisiosiao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos</p><p>autorais e não pode ser reproduzido ou repassado para terceiros. 21/11/2023, 22:49:39</p><p>P). Considere a ClassePai abaixo:</p><p>Considere também a ClasseFilha abaixo, a qual herda da ClassePai:</p><p>Por fim, qual sera a saída gerada pela execução do código abaixo?</p><p>Eu sou a classe filha.</p><p>P). Observe o código abaixo:</p><p>Esse código apresenta um erro. Reescreva o código corrigindo o erro de modo que o método() seja chamado de</p><p>dentro de main() e execute a impressão no console corretamente.</p><p>package pacote;</p><p>public class Classe {</p><p>Private void metodo() {</p><p>System.out.println(“Olá mundo!”);</p><p>}</p><p>Public static void main(String[] args) {</p><p>Classe c = new Classe();</p><p>c.método();</p><p>}</p><p>}</p><p>Impresso por Tarcisio Lima, E-mail tarcisiosiao@gmail.com para uso pessoal e privado. Este material pode ser protegido por direitos</p><p>autorais e não pode ser reproduzido ou repassado para terceiros. 21/11/2023, 22:49:39</p><p>P). Aos se projetar um sistema que utiliza classes hierárquicas para tirar vantagem do polimorfismo, muitas</p><p>vezes precisamos escrever métodos em classes que existem apenas para serem usados polimorficamente. Estes</p><p>métodos possuem implementações que nunca são executadas. Para resolver esse problema, a orientação a</p><p>objetos oferece classes abstratas e interfaces que apenas definem assinaturas de métodos, sem implementação.</p><p>Apresente ao menos uma vantagem do uso de classes abstratas e interfaces .</p><p>Uma vantagem para classes abstratas é que força a hierarquia para todas as sub-classes e as interfaces</p><p>podem ser usadas para implementar heranças múltiplas.</p>

Mais conteúdos dessa disciplina