POO – 21/10/2026 – Conceitos

Programação Orientada a Objetos (POO)

Principais conceitos e definições

A Programação Orientada a Objetos (POO) é um paradigma de programação que organiza o código em classes e objetos, permitindo representar elementos do mundo real dentro de um programa.

Na POO, podemos criar objetos que possuem características (atributos) e ações (métodos).

Por exemplo, em um sistema de veículos, podemos representar um carro com sua cor, modelo e ano, além de ações como ligar, acelerar e frear.

1. Classe

Uma classe é um modelo ou molde utilizado para criar objetos. Ela define quais características e comportamentos os objetos terão.

Uma classe é composta principalmente por:

  • Atributos: características dos objetos.
  • Métodos: ações que os objetos podem executar.

Exemplo: a classe Carro funciona como um projeto que permite criar diferentes carros.

Exemplo: Uma classe Carro pode possuir os atributos cor, modelo e ano, além dos métodos acelerar() e frear().

2. Objeto

Um objeto é um elemento criado a partir de uma classe. Também podemos dizer que um objeto é uma instância de uma classe.

Cada objeto possui seus próprios valores de atributos e pode executar os métodos definidos pela classe.

Exemplo: A partir da classe Carro, podemos criar vários objetos:

Mazda Händler, Service & Angebote | Gerhard und Figge GmbH Waldeck-Höringhausen

Carro 1: Vermelho, 2020

Neu 2026 Skoda Fabia Selection 116 PS Kleinwagen – Thüringen (Händler) – 23.690 € (Guter Preis) | AutoUncle

Carro 2: Azul, 2022

Ajogua – Marketplace de autos nuevos y usados en Paraguay

Carro 3: Preto, 2024

Todos pertencem à mesma classe, mas cada objeto possui características próprias.

3. Atributos (características)

Os atributos são as informações que descrevem um objeto. Eles representam suas características e armazenam os dados necessários para o funcionamento do programa.

Exemplo: Um objeto da classe Carro pode possuir:

AtributoValor
corVermelho
modeloGol
ano2020
velocidade60 km/h

Os valores dos atributos podem variar de um objeto para outro.

4. Métodos (ações)

Os métodos são funções definidas dentro de uma classe que representam os comportamentos dos objetos.

Eles permitem que os objetos realizem ações e, quando necessário, modifiquem seus atributos.

Exemplo: Um objeto da classe Carro pode executar:

  • ligar() — liga o carro.
  • acelerar() — aumenta a velocidade.
  • frear() — diminui a velocidade.
  • desligar() — desliga o carro.

5. Encapsulamento

O encapsulamento é o princípio de organizar e proteger os dados internos de um objeto, controlando como eles podem ser acessados ou modificados.

Em vez de permitir que qualquer parte do programa altere diretamente os atributos, podemos utilizar métodos para controlar essas alterações.

Exemplo: Em um carro, o motorista utiliza o acelerador e o freio sem precisar manipular diretamente os componentes internos do motor.

Na programação, podemos criar um método acelerar() que modifica a velocidade, impedindo valores inválidos, como uma velocidade negativa.

6. Herança

A herança permite que uma classe aproveite atributos e métodos de outra classe.

A classe que fornece as características é chamada de classe-pai (superclasse), enquanto a classe que herda essas características é chamada de classe-filha (subclasse).

Exemplo: Uma classe CarroEsportivo pode herdar as características da classe Carro e acrescentar novos comportamentos.

Classe Carro

cor, modelo, acelerar(), frear()

CarroEsportivo ativarTurbo()

CarroEletrico recarregar()

As duas subclasses herdam características da classe Carro e acrescentam comportamentos próprios.

A herança facilita o reaproveitamento de código e evita a repetição de funcionalidades.

7. Polimorfismo

O polimorfismo permite que objetos de diferentes classes respondam à mesma operação de maneiras diferentes.

Isso significa que podemos utilizar um método com o mesmo nome em diferentes classes, mas cada uma pode apresentar seu próprio comportamento.

Exemplo: Considere uma classe Animal com o método fazerSom().

Golden retriever sitting and looking at the camera, isolated on white

Cachorro

fazerSom() → Au, au!

Ginger cat isolated on white background sitting and looking at camera. Pets at home.

Gato

fazerSom() → Miau!

O método possui o mesmo nome, mas seu comportamento depende do tipo de objeto que o executa.

8. Abstração

A abstração consiste em representar apenas as características e funcionalidades importantes de um objeto, deixando de lado detalhes que não são necessários para o programa.

Ela permite criar modelos mais simples e fáceis de compreender.

Exemplo: Em um sistema de controle de veículos, podemos representar um carro utilizando apenas:

  • Modelo
  • Cor
  • Ano
  • Velocidade
  • Métodos para acelerar e frear

Não precisamos representar todos os parafusos, fios ou componentes mecânicos do veículo, pois essas informações não são necessárias para o objetivo do sistema.

Atividade de Fixação – Programação Orientada a Objetos (POO)

QUESTÃO 1 – CLASSE

Na Programação Orientada a Objetos, qual é a principal função de uma classe?

A) Armazenar exclusivamente informações em um banco de dados.
B) Servir como modelo para a criação de objetos, definindo atributos e métodos.
C) Executar somente operações matemáticas.
D) Representar um objeto que já foi criado.

QUESTÃO 2 – OBJETO

Em um programa, foram criados carro1 e carro2 a partir da classe Carro. O que são carro1 e carro2?

A) Métodos da classe Carro.
B) Atributos da classe Carro.
C) Objetos ou instâncias da classe Carro.
D) Classes que obrigatoriamente herdam de Carro.

QUESTÃO 3 – ATRIBUTOS

Considere uma classe Aluno que possui nome, idade e matricula. Esses elementos são exemplos de:

A) Métodos.
B) Atributos.
C) Objetos.
D) Construtores.

QUESTÃO 4 – MÉTODOS

Em uma classe ContaBancaria, existe uma função depositar() que aumenta o saldo da conta. Essa função é considerada:

A) Um atributo.
B) Uma classe.
C) Um objeto.
D) Um método.

QUESTÃO 5 – ENCAPSULAMENTO

Um sistema bancário impede que o saldo de uma conta seja alterado diretamente, permitindo mudanças apenas por métodos como depositar() e sacar(). Qual princípio está sendo aplicado?

A) Herança.
B) Polimorfismo.
C) Encapsulamento.
D) Abstração.

QUESTÃO 6 – HERANÇA

Uma classe Moto herda atributos e métodos da classe Veiculo. Qual conceito da POO está sendo utilizado?

A) Herança.
B) Encapsulamento.
C) Abstração.
D) Polimorfismo.

QUESTÃO 7 – POLIMORFISMO

As classes Cachorro e Gato possuem o método fazerSom(), mas cada uma produz um som diferente. Esse comportamento exemplifica:

A) Encapsulamento.
B) Herança obrigatória de atributos privados.
C) Abstração.
D) Polimorfismo.

QUESTÃO 8 – ABSTRAÇÃO

Ao desenvolver um sistema escolar, o programador representa um aluno apenas por nome, matrícula, turma e notas, ignorando características que não são necessárias ao sistema. Qual conceito está sendo aplicado?

A) Herança.
B) Abstração.
C) Polimorfismo.
D) Encapsulamento.

Rolar para cima