Javaとそのさまざまなタイプのカップリングとは何ですか?



Javaでの結合とは、一方のクラスがもう一方のクラスについて知っている知識の範囲を指します。例を使用して、Javaでの疎結合と密結合を学習します。

Javaは 。 Javaで作業する場合、Javaでの結合は重要な役割を果たします クラス そして オブジェクトこれは基本的に、一方のクラスがもう一方のクラスについて知っている知識の範囲を指します。したがって、この記事では、Javaでの結合、そのさまざまなタイプ、および例についてすべて学習します。

このチュートリアルでは、以下のトピックについて説明します。





さぁ、始めよう。



JavaロゴJavaでの結合

オブジェクトが別のオブジェクトによって使用できる状況は、結合と呼ばれます。それは、一緒に協力し、お互いのために働くプロセスです。これは単に、割り当てられたタスクを完了するために、あるオブジェクトが別のオブジェクトを必要とすることを意味します。これは基本的に、別のオブジェクトによるオブジェクトの使用であり、それによってモジュール間の依存関係が減少します。あるクラスが別のクラスのロジックを呼び出す場合、コラボレーションと呼ばれます。

カップリングの種類

Javaでのポーリングは、さらに2つのタイプに分けられます。

それぞれを理解しましょう。



密結合: それクラスのグループが相互に大きく依存している場合です。このシナリオは、クラスがあまりにも多くの責任を引き受ける場合、または1つの懸念が独自のクラスを持つのではなく多くのクラスに分散している場合に発生します。オブジェクトがその使用のために別のオブジェクトを作成する状況は、次のように呼ばれます。 密結合 。親オブジェクトは子オブジェクトについてより多くのことを知っているため、2つのオブジェクトは密結合と呼ばれます。依存係数と、オブジェクトを他の人が変更できないという事実は、緊密に結合された用語を実現するのに役立ちます。

それでは、例を使って概念を説明しましょう。

例: 2つのクラスを作成したとします。最初のクラスはVolumeというクラスで、もう1つのクラスはボックスのボリュームを評価します。 Volumeクラスで行われる変更は、Boxクラスに反映されます。したがって、両方のクラスは相互に依存しています。この状況は、特に密結合と呼ばれます。

以下に示すコードは、密結合の実装プロセスを理解するのに役立ちます。

例1:

パッケージタイトカップリングクラスVolume {public static void main(String args []){Box b = new Box(15、15、15)System.out.println(b.volume)}} class Box {public int volume Box(int length 、int width、int height){this.volume = length * width * height}}

出力:

3375

上記の例では、2つのクラスがどのようにバインドされ、チームとして機能するかを確認できます。これは、Javaでの密結合の簡単な例です。プロセスを描いた別の例!

例2:

パッケージタイトカップリングpublicclass Edureka {public static void main(String args []){A a = new A()a.display()}} class A {B b public A(){b = new B()} public void display(){System.out.println( 'A')b.display()}}クラスB {public B(){} public void display(){System.out.println( 'B')}}

出力:


B

疎結合: オブジェクトが外部ソースから使用されるオブジェクトを取得するとき、それを疎結合と呼びます。言い換えると、疎結合とは、オブジェクトが独立していることを意味します。疎結合コードは、メンテナンスと労力を削減します。これは、疎結合コードによって削除された密結合コードの欠点でした。 Javaでの疎結合の例をいくつか見てみましょう。

Javaでxmlを解析する方法

例1:

package lc class Volume {public static void main(String args []){Box b = new Box(25、25、25)System.out.println(b.getVolume())}} final class Box {private int volume Box (int length、int width、int height){this.volume = length * width * height} public int getVolume(){return volume}}

出力:

15625

例2:

パッケージlosecoupleingimport java.io.IOException public class Edureka {public static void main(String args [])throws IOException {Show b = new B()Show c = new C()A a = new A(b)a.display ()A a1 = new A(c)a1.display()}} interface Show {public void display()} class A {Show s public A(Show s){this.s = s} public void display(){ System.out.println( 'A')s.display()}}クラスBはShowを実装します{public B(){} public void display(){System.out.println( 'B')}}クラスCはShowを実装します{public C(){} public void display(){System.out.println( 'C')}}

出力:


B

C

密結合と疎結合の違い

密結合疎結合

より多くの相互依存性

依存性が少ない、より良いテスト能力

プログラムのGOF原則に従って、インターフェースを取ります

インターフェイスの概念を提供していません

同期通信

非同期通信

より多くの調整、2つのオブジェクト間でコード/オブジェクトを交換するのは簡単です

調整が少なく、簡単ではない

これで、この「Javaでの結合」の記事は終わりです。私あなたがそれが有益であると思ったことを願っています。詳細を知りたい場合は、他の 同じように。

Javaの基本を理解したので、 25万人以上の満足した学習者のネットワークを持つ信頼できるオンライン学習会社であるEdurekaが世界中に広がっています。 EdurekaのJavaJ2EEおよびSOAトレーニングおよび認定コースは、Java開発者になりたい学生および専門家向けに設計されています。このコースは、Javaプログラミングをすぐに開始できるように設計されており、HibernateやSpringなどのさまざまなJavaフレームワークに加えて、コアと高度なJavaの両方の概念についてトレーニングします。

質問がありますか?この「コメントセクションでそれについて言及してくださいJavaでの結合」ブログと私たちはできるだけ早くあなたに返信します。