ملخص
عند تحويل واجهة إلى واجهة أخرى يرغب المستخدم ، يتيح وضع المحول الفئات التي لا يمكن أن تعمل معًا بسبب عدم توافق الواجهات.
طريقتان للتنفيذ
1. وضع محول الفئة:
2. وضع محول الكائن:
مخطط UML لوضع المحول للفئة هو كما يلي:
يحول نمط محول الفئة واجهة برمجة تطبيقات الفئة المكيفة إلى واجهة برمجة تطبيقات الفئة المستهدفة.
الشخصيات المصممة في الصورة أعلاه هي:
الهدف: هذه هي الواجهة التي تبحث عنها.
دور المصدر (Adapee): الواجهة اللازمة الآن للتكيف.
دور المحول (محول): إنه جوهر هذا الوضع ، ويقوم المحول بتحويل واجهة المصدر إلى الواجهة الهدف.
مثال رمز:
واجهة الهدف {void method1 () ؛ method method2 () ؛ // آمل أن أحصل على هذه الطريقة} // لا تحتوي فئة المصدر على الطريقة في Method2. class Adaptee {public void method1 () {system.out.println ("method1") ؛ }} محول الفئة يمتد على Adaptee Passee Target {Override public void method2 () {system.out.println ("هذه طريقة الهدف") ؛ }} الفئة العامة maintest {public static void main (string arg []) {target target = new Adapter () ؛ Target.Method2 () ؛ }} مخطط UML لوضع محول الكائن هو كما يلي:
الفكرة الأساسية هي نفس وضع محول الفصل. إنه يغير فقط فئة المحول ، ولا يرث فئة Adaptee ، ولكنه يحمل إشارة إلى فئة Adaptee. الرمز كما يلي:
واجهة الهدف {void method1 () ؛ void method2 () ؛} class Adaptee {public void method1 () {system.out.println ("method1") ؛ }} محول الفئة ينفذ Target {private Adaptee Adaptee ؛ المحول العام (Adaptee Adaptee) {this.adaptee = Adaptee ؛ } Override public void method2 () {system.out.println ("هذه طريقة الهدف") ؛ } Override public void method1 () {// todo method method tuto method applistee.method1 () ؛ }} الفئة العامة maintest {public static void main (string arg []) {target target = new Adapter (new Adaptee ()) ؛ Target.Method2 () ؛ }} مزايا وعيوب وضع المحول:
أفضل قابلية لإعادة الاستخدام وتحسين التوسع. يحتاج النظام إلى استخدام الفئات الموجودة ، ولا تلبي هذه الواجهات احتياجات النظام ، بحيث يمكن إعادة استخدام هذه الوظائف بشكل أفضل من خلال وضع المحول. عند تطبيق وظيفة المحول ، يمكنك استدعاء الوظائف التي طورتها بنفسك لتوسيع وظائف النظام بشكل طبيعي.
العيوب: سيجعل الكثير من الاستخدام للمحولات النظام فوضويًا للغاية ويصعب فهمه بشكل عام.
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.