Baixe o app para aproveitar ainda mais
Prévia do material em texto
1. Em que situações a programação orientada a objetos é vantajosa em relação à programação estruturada? Uma das desvantagens da programação estruturada é a tendência em gerar códigos onde tratamentos de dados são misturados com o comportamento do programa. Além disso, caso o programador quisesse criar um programa semelhante a um que já tivesse feito, era complicado pegar determinadas partes deste programa já pronto e trazer para o novo projeto,uma vez que era necessário, na maior parte das vezes, realizar mudanças substanciais no código. Neste cenário surgiu a Programação Orientada a Objetos. Ela foi criada para tentar simular o mundo real dentro do computador e para isso utiliza objetos. Desta forma, fica a cargo do programador modelar objetos e a interação entre eles. Essa modelagem leva em consideração alguns conceitos, dentre os principais, pode-se citar: Classe, Atributos, Métodos,Abstração, Encapsulamento, Associação, Herança, Polimorfismo. * Vantagens: - Provê uma melhor organização do código. - Contribui para o reaproveitamento de código. ______________________________________________________________________ 2. Quais são as vantagens do uso de herança no desenvolvimento de aplicações? Uma das vantagens da herança é a facilidade de localizar erros de programação. Por exemplo,caso um objeto derivado de outro apresente um erro de funcionamento; se o objeto original funcionava corretamente, é claro que o erro está na parte do código que implementa as novas características do objeto derivado. A herança permite, também, reaproveitar o código escrito anteriormente, adaptando-o às novas necessidades. Isso é muito importante porque os custos de desenvolvimento de software são muitos elevados. A mão de obra altamente especializada é cara; o processo é demorado e sujeito a ocorrências inesperadas. Outras vantagens : Reusabilidade de código: permite o desenvolvimento de aplicações novas que requeiram pouca codificação. Compartilhamento de código: usuários em diferentes projetos utilizando uma mesma classe. Componentes de Software: Herança permite que programadores construam componentes de software reutilizáveis. ______________________________________________________________________ 3. Qual a funcionalidade das classes abstratas? Uma classe abstrata é desenvolvida para representar entidades e conceitos abstratos. A classe abstrata é sempre uma superclasse que não possui instâncias. Ela define um modelo (template) para uma funcionalidade e fornece uma implementação incompleta - a parte genérica dessa funcionalidade - que é compartilhada por um grupo de classes derivadas. Cada uma das classes derivadas completa a funcionalidade da classe abstrata adicionando um comportamento específico. ______________________________________________________________________ 4. Quais são os especificadores de acesso e quais as características de cada um? Java possui quatro diferentes níveis de acessibilidade que atuam sobre classes, atributos e métodos.
Compartilhar