Buscar

Ativ-Estrut-Ling-Prog

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

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 oprogramador 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 do 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.
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 que é 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.
São elas:
 
Menos Restrito:
 
Public - Acesso irrestrito, ou seja, pode ser acessado por qualquer parte do código de qualquer classe. Deve ser utilizado com cuidado.
Protected - Acesso apenas por classes dentro do mesmo pacote, ou subclasses dentro ou fora do mesmo pacote.
 
Mais Restrito:
 
Default - Acesso apenas por classes dentro do mesmo pacote.
 
Private - Acesso apenas pela própria classe(nem subclasses têm acesso).

Outros materiais