Рубрики
Без рубрики

Композиция в примере Java

Композиция в Java реализует отношения между объектами. Что такое композиция на Java? Пример программы для составления Java и видеоурок.

Автор оригинала: Pankaj Kumar.

Композиция в java-это метод проектирования для реализации отношений has-a в классах. Мы можем использовать наследование java или композицию объектов в java для повторного использования кода.

Композиция на языке Java

Композиция Java достигается за счет использования переменных экземпляра, которые ссылаются на другие объекты. Например, у Человека есть Работа . Давайте посмотрим на это с помощью примера кода java – композиции.

Пример композиции Java

package com.journaldev.composition;

public class Job {
    private String role;
    private long salary;
    private int id;
        
    public String getRole() {
        return role;
    }
    public void setRole(String role) {
        this.role = role;
    }
    public long getSalary() {
        return salary;
    }
    public void setSalary(long salary) {
        this.salary = salary;
    }
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    
    
}
package com.journaldev.composition;

public class Person {

    //composition has-a relationship
    private Job job;
   
    public Person(){
        this.job=new Job();
        job.setSalary(1000L);
    }
    public long getSalary() {
        return job.getSalary();
    }

}

Вот пример тестового класса для java-композиции, который использует объект person и получает его зарплату.

package com.journaldev.composition;

public class TestPerson {

    public static void main(String[] args) {
        Person person = new Person();
        long salary = person.getSalary();
    }

}

Преимущества композиции Java

Обратите внимание, что приведенная выше программа тестирования композиции на java не зависит от каких-либо изменений в объекте задания. Если вы ищете повторное использование кода и связь между двумя классами имеет-a , то вам следует использовать композицию, а не наследование.

Преимущество использования композиции в java заключается в том, что мы можем контролировать видимость других объектов для клиентских классов и повторно использовать только то, что нам нужно.

Также, если есть какие-либо изменения в реализации другого класса, например getSalary возвращающая строка, нам нужно изменить класс Person, чтобы приспособить его, но клиентские классы не нуждаются в изменении.

Композиция позволяет создавать внутренний класс, когда это необходимо, например, мы можем изменить Person | getSalary метод для инициализации объекта задания во время выполнения, когда это необходимо.

Дальнейшее чтение: Знаете ли вы, что одной из лучших практик в программировании на Java является использование композиции вместо наследования, ознакомьтесь с этим постом для подробного анализа Композиция против наследования .

Java Композиция Видео на Youtube

Недавно я создал видео на YouTube, чтобы подробно объяснить композицию на java, пожалуйста, посмотрите его ниже.

Это все для композиции в java или примере композиции java. Я надеюсь, что вы найдете это полезным для принятия обоснованных решений при разработке классов приложений.

Ссылка: Страница Википедии