Все, что вам нужно знать о взаимосвязи в Java



Эта статья предоставит вам подробные и исчерпывающие знания о взаимосвязях в java и их различных применениях.

Имеет отношения в и 'Отношение' - два самых запутанных термина. В этой статье мы остановимся на следующих параметрах:

запустить запрос куста из командной строки

Введение в язык Java

Имеет отношение в Java, известное как композиция. Он используется для повторного использования кода. По сути, это означает, что экземпляр одного класса имеет ссылку на экземпляр другого класса или другой экземпляр того же класса. Эта связь помогает свести к минимуму дублирование кода, а также количество ошибок.





Композиция - это форма объединения. Ассоциация известна как отношение между двумя отдельными классами, которые авторизованы через свои объекты. Ассоциация может иметь вид:

  1. Один к одному



  2. Один ко многим

  3. Многие к одному

  4. Многие-ко-многим



В ООП (объектно-ориентированное программирование) объект взаимодействует с другим объектом, чтобы использовать все службы и функции, предоставляемые этим объектом.

Ассоциация

Вот пример реализации ассоциации.

import java.io. * class Bank {private String name Bank (String name) {this.name = name} public String getBankName () {return this.name}} class Employee {private String name Employee (String name) {this. name = name} public String getEmployeeName () {return this.name}} class Association {public static void main (String [] args) {Bank b = new Bank ('Axis') Employee e = new Employee ('Himanshi') System.out.println (e.getEmployeeName () + 'является сотрудником' + b.getBankName ())}}

Вывод:

has-a-relationship-in-java

Это особая форма объединения, где:

  1. Это представляет собой отношения.

  2. Это известно как однонаправленная ассоциация (одностороннее отношение). Например, на кафедре могут быть учителя, но наоборот, это неверно и, следовательно, однонаправленное по своей природе.

Теперь поговорим о композиции.

Композиция - это ограниченная форма, в которой два объекта сильно зависят друг от друга. Когда между двумя сущностями существует композиция, составленное не может находиться без другой сущности.

Вот пример библиотеки для демонстрации концепции композиции.

import java.io. * import java.util. * class Book {public String title public String author Book (String title, String author) {this.title = title this.author = author}} class Library {private final List books Library (Список книг) {this.books = books} public List getTotalBooksInLibrary () {return books}} class edureka {public static void main (String [] args) {Book b2 = new Book ('Thinking Java', 'Brua E' ) Книга b3 = новая книга ('Java: Complete Reference', 'Herb S') List books = new ArrayList () books.add (b2) books.add (b3) Library library = new Library (books) List bks = library .getTotalBooksInLibrary () для (Книга bk: bks) {System.out.println ('Название:' + bk.title + 'и' + 'Автор:' + bk.author)}}}

Вывод:

Рекурсия Фибоначчи в C ++

Одним из основных преимуществ OOPS является возможность повторного использования кода. Есть два способа повторного использования кода - это реализациянаследование или состав объекта.

Сравнение состава и наследования: родство

  • По композиции изменить класс проще, чем по наследованию.

  • Наследование - это статическая привязка, а композиция - это динамическая привязка.

  • Наследование классов определяется во время компиляции, тогда как состав объекта определяется во время выполнения.

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

  • В композиции доступ может быть ограничен, тогда как в композиции объекта нет контроля доступа.

  • В наследовании он прерывает инкапсуляцию, раскрывая подкласс деталям его родительской реализации, тогда как в Object Composition он не прерывает инкапсуляцию, поскольку доступ к объектам осуществляется полностью через их интерфейсы.

  • В наследовании он обеспечивает возможность повторного использования кода, тогда как в композиции объектов он позволяет представлять ассоциации.

Пример 1:

class Operation {int square (int n) {return n * n}} class Circle {Operation op // агрегация double pi = 3.14 double area (int radius) {op = new Operation () int rsquare = op.square (radius) // возможность повторного использования кода (т.е. делегирует вызов метода). return pi * rsquare} public static void main (String args []) {Circle c = new Circle () double result = c.area (5) System.out.println (result)}}

Вывод:

что такое токен Java

Пример 2:

class House {Kitchen k = new Kitchen () // дополнительный код для домашнего класса} Class Kitchen {// код кухонного класса}

Если дом будет разрушен, разрушится и кухня. Это называется композицией, когда два объекта зависят друг от друга. Эталонный класс (Кухня) не мог бы существовать без класса контейнера (Дом).

На этом мы подошли к концу статьи «Имеет отношение в Java». По сути, в композиции класс может повторно использовать функциональные возможности класса, создав ссылку на объект класса, который он хочет использовать повторно. Он известен как частный случай агрегирования.

C черт возьми от Edureka, надежной компании онлайн-обучения с сетью из более чем 250 000 довольных учащихся по всему миру. Курс обучения и сертификации по Java J2EE и SOA от Edureka предназначен для студентов и профессионалов, которые хотят стать Java-разработчиками.

Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев этого блога «Имеет отношение в Java», и мы свяжемся с вами как можно скорее.