Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

CENTRO UNIVERSITÁRIO DA GRANDE DOURADOS
Curso: TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
Semestre: 2º
Disciplina: Programação Orienta a Objetos
Professora: Me. France Ricardo Marques Gonzaga
Atividades das Aulas 05 a 08
1)Explique o mecanismo de Herança da Programação Orientada a Objetos? 
R: A herança na POO permite que uma classe herde atributos e métodos de outra, 
facilitando a reutilização de código e a criação de hierarquias. Ela pode ser pública, 
protegida ou privada. A herança múltipla pode causar ambiguidades, resolvidas com o 
operador ::.
Complete
2) Se um atributo for declarado como protected, ele só pode ser utilizado na classe onde 
foi declarado e nas classes herdeiras. Isso significa que quando ocorrer algum bug, 
você só precisa procurar na classe em que o atributo foi declarado e nas classes 
herdeiras.
01)Como o polimorfismo promove a extensibilidade?
R: O polimorfismo promove a extensibilidade permitindo que uma classe filha herde 
métodos de uma classe pai e os redefina conforme necessário. Isso possibilita que 
métodos tenham diferentes comportamentos dependendo de como são chamados. Essa 
flexibilidade é útil na Programação Orientada a Objetos (POO), pois facilita a 
implementação, o desenvolvimento e a manutenção de projetos, permitindo a adição de 
novas funcionalidades sem modificar o código existente.
02) Explique o que é sobrecarga de operadores e quais são suas limitações?
R: A sobrecarga de operadores permite redefinir o comportamento de 
operadores padrão para tipos de dados personalizados em programação 
orientada a objetos. Contudo, não é possível criar novos operadores, e deve-se 
respeitar a definição original, como a quantidade de operandos. Além disso, a 
precedência e a associatividade dos operadores não podem ser alteradas, e a 
sobrecarga deve manter um comportamento intuitivo e consistente.
Complete
01) Perceba que, para chamarmos a função, devemos declarar o tipo, pois apesar do 
valor, está sendo passado com o ponto indicando que o número não é inteiro. Isso 
diferencia uma função da outra, uma com o tipo “int” e a outra com o tipo “float”, o 
que torna as funções distintas, sendo que as duas possuem o mesmo nome “abs”.
02) Qual a vantagem de utilizar a sobrecarga de funções?
R: A sobrecarga de funções permite usar o mesmo nome para múltiplas funções que 
diferem em número ou tipo de parâmetros, aumentando a flexibilidade e clareza do 
código. Isso facilita a manutenção e compreensão ao unificar operações similares sob 
um único identificador, tornando o código mais intuitivo e organizado.
01) Implemente um programa onde você tenha que criar uma classe template que você 
insira 4 notas. Depois calcule a média, sendo que essas notas podem ser do tipo float ou 
do tipo int. Crie a implementação completa, inclusive a função main.
R: #include 
using namespace std;
// Classe template para armazenar e calcular a média de notas
template 
class Notas {
private:
 T notas[4];
public:
 void setNotas(T n1, T n2, T n3, T n4) {
 notas[0] = n1;
 notas[1] = n2;
 notas[2] = n3;
 notas[3] = n4;
 }
 T calcularMedia() {
 T soma = 0;
 for (int i = 0; i notasInt;
 notasInt.setNotas(85, 90, 78, 92);
 cout notasFloat;
 notasFloat.setNotas(85.5, 90.2, 78.8, 92.3);
 cout 
using namespace std;
// Declaração e definição do template de função Maximo
// A função Maximo requer dois argumentos do mesmo tipo e retorna o maior deles.
// Nota: Este template de função é aplicável apenas a tipos para os quais o operador 
T Maximo(T valor1, T valor2) {
 return (valor1

Mais conteúdos dessa disciplina