17.9. Classes e Objetos: Composição de objetos

Página 53

17.9. Classes e Objetos: Composição de Objetos

A programação orientada a objetos é uma abordagem de programação que envolve a criação de objetos que contêm tanto dados quanto métodos. Uma das principais características da programação orientada a objetos é a composição de objetos, também conhecida como composição de classes. A composição é uma maneira de combinar objetos para criar estruturas de dados mais complexas.

O que é Composição de Objetos?

A composição de objetos é um princípio de design orientado a objetos que descreve uma relação de "tem um" entre diferentes classes. A composição permite que uma classe contenha uma instância de outra classe. Por exemplo, se tivermos uma classe chamada "Carro" e outra classe chamada "Motor", podemos dizer que "Carro" tem um "Motor". Esta é a composição de objetos.

Como Funciona a Composição de Objetos?

Na composição, uma classe (a classe composta) contém um objeto de outra classe (a classe componente) como um campo. A classe composta tem controle total sobre a criação e vida útil do objeto da classe componente. O objeto da classe componente não pode existir sem o objeto da classe composta.

Por exemplo, consideremos uma classe "Carro" que contém um objeto "Motor". O "Motor" é inicializado quando o "Carro" é criado e destruído quando o "Carro" é destruído. O "Motor" não pode existir sem o "Carro".

Vantagens da Composição de Objetos

A composição de objetos oferece várias vantagens. Primeiro, permite que você crie estruturas de dados complexas a partir de classes simples. Por exemplo, você pode criar uma classe "Carro" a partir de classes "Motor", "Rodas" e "Assentos".

Segundo, a composição promove a reutilização de código. Se você tem uma classe "Motor" que já foi testada e comprovada, pode reutilizá-la em sua classe "Carro" sem ter que reescrever ou testar o código novamente.

Terceiro, a composição permite que você altere o comportamento de uma classe sem alterar a própria classe. Por exemplo, se você quiser mudar a forma como o "Carro" funciona, pode simplesmente substituir o "Motor" por um diferente.

Exemplo de Composição de Objetos

Veja um exemplo de composição de objetos em Java:

public class Motor {
    public void start() {
        System.out.println("O motor está funcionando.");
    }
}

public class Carro {
    private Motor motor;

    public Carro() {
        motor = new Motor();
    }

    public void drive() {
        motor.start();
        System.out.println("O carro está dirigindo.");
    }
}

Neste exemplo, a classe "Carro" contém um objeto "Motor". O "Motor" é inicializado quando o "Carro" é criado. Quando o método "drive" é chamado no "Carro", ele chama o método "start" no "Motor".

Este é um exemplo simples, mas a composição de objetos pode ser usada para criar estruturas de dados muito mais complexas. A chave é entender que a composição permite que você crie classes que contêm outras classes, o que pode levar a uma estrutura de dados muito rica e complexa.

Em resumo, a composição de objetos é um princípio fundamental da programação orientada a objetos que permite que você crie estruturas de dados complexas a partir de classes simples. Aprender a usar a composição de objetos efetivamente pode torná-lo um programador muito mais eficiente e eficaz.

Now answer the exercise about the content:

O que é composição de objetos na programação orientada a objetos?

You are right! Congratulations, now go to the next page

You missed! Try again.

Next page of the Free Ebook:

5417.10. Classes e Objetos: Métodos estáticos

Earn your Certificate for this Course for Free! by downloading the Cursa app and reading the ebook there. Available on Google Play or App Store!

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text