تصف هذه المقالة وظيفة محول الطاقة في تطبيقات وضع محول Java. شاركه للرجوع إليه ، على النحو التالي:
1. تعريف نمط
هناك وضعان محولان
1 وضع محول الكائن في وضع المحول هذا ، يحمل المحول كيانًا ماديًا لكائن الفئة الذي يلفه.
وضع محول الفئة 2 في وضع المحول هذا ، يرث المحول من الفئة التي تم تنفيذها.
2. أمثلة على النموذج
1 تحليل نمط
نحن نقترض محول طاقة قلم رصاص لتوضيح هذا الوضع.
بالفعل محول طاقة الكمبيوتر المحمول AC Power
2 النمذجة الثابتة لوضع المحول
3 أمثلة رمز
3.1 إنشاء إمدادات الطاقة التجريدية
package com.demo.power ؛/** * فئة قاعدة الطاقة * * Author * */Public Abstract Class AbbasePower {// Voltage Value Power Float Power ؛ // وحدة السلسلة الخاصة = "V" ؛ // construct method public absbasePower (float power) {this.power = power ؛ } getPower getPower () {return power ؛ } public void setPower (float power) {this.power = power ؛ } السلسلة العامة getUnit () {وحدة الإرجاع ؛ } public void setUnit (وحدة السلسلة) {this.unit = unit ؛ }}3.2 220 فولت واجهة الطاقة
package com.demo.power.v220 ؛/** * 220V واجهة الطاقة * * Author * */واجهة عامة Ipower220 {// 220V AC Power Printing Public Void Output220V () ؛}3.3 فئة تنفيذ إمداد الطاقة 220 فولت
package com.demo.power.v220 ؛ import com.demo.power.absbasePower ؛/** * 220v مزود الطاقة * * Author * */Public Class Power220 يمتد ObbasePower بتنفيذ Ipower220 {// Construct Method Power220 () {Super (220) ؛ } // 220V Output Public Void Outder220V () {system.out.println ("--- هذا هو [" + this.getPower () + this.getUnit () + "] power! ...") ؛ }}3.4 واجهة الطاقة 12V
package com.demo.power.v12 ؛/** * 12V واجهة الطاقة * * Author * */واجهة عامة Ipower12 {// 12V Power Protect Public Outder12v () ؛}3.5 12 فولت فئة تنفيذ إمدادات الطاقة
package com.demo.power.v12 ؛ استيراد com.demo.power.absbasePower ؛/** * مزود الطاقة 12V العادي * * Author * */Public Class Power12 يمتد ObbAsePower Passionments ipower12 {// 12v طريقة بناء الطاقة العامة 12 () {Super (12) ؛ }. }}3.6 محول كائن الطاقة 12V
package com.demo.adapter ؛ import com.demo.power.absbasePower ؛ import com.demo.power.v12.ipower12 ؛ absbasePower // طريقة بناء المحول تمرر الكائن المراد تحويله إلى محول عام 12 (absbasePower absbasePower) {this.absbasePower = absbasePower ؛ }. // قم بتحويل الطاقة إذا (powerfloat == 380) {// 380V تحويل الطاقة powerfloat = powerfloat / 31.67f ؛ } آخر إذا (powerfloat == 220) {// 220v تحويل الطاقة powerfloat = powerfloat / 18.33f ؛ } if if (powerfloat == 110) {// 110V تحويل الطاقة powerfloat = powerfloat / 9.17f ؛ } آخر {system.out.println ("----- لا يمكن أن يتكيف مع السلطة! ...") ؛ يعود؛ } // معالجة نتيجة التحويل powerfloat = (int) (powerfloat * 10) / 10.0f ؛ System.out.println ("---- هذا هو [" + powerfloat + this.absbasePower.getUnit () + "] power! ...") ؛ }}3.7 محول الطاقة 12 فولت
package com.demo.adapter ؛ import com.demo.power.absbasePower ؛ import com.demo.power.v12.ipower12 ؛ تمرر الطريقة الكائن المراد تحويله إلى محول عام 12ext (absbasePower absbasePower) {super (absbasePower.getPower ()) ؛ }. // قم بتحويل الطاقة إذا (powerfloat == 380) {// 380V تحويل الطاقة powerfloat = powerfloat / 31.67f ؛ } آخر إذا (powerfloat == 220) {// 220v تحويل الطاقة powerfloat = powerfloat / 18.33f ؛ } if if (powerfloat == 110) {// 110V تحويل الطاقة powerfloat = powerfloat / 9.17f ؛ } آخر {system.out.println ("----- لا يمكن أن يتكيف مع السلطة! ...") ؛ يعود؛ } // معالجة نتيجة التحويل powerfloat = (int) (powerfloat * 10) / 10.0f ؛ System.out.println ("---- هذا هو [" + powerfloat + this.getUnit () + "] power! ...") ؛ }}3.8 محول الاختبار
package com.demo ؛ import com.demo.adapter.adapterpower12 ؛ import com.demo.adapter.adapterpower12ext ؛ import com.demo.power.v12.ipower12 ؛ import com.demo.power.v12.power12 ؛ import com.demo.power.power12 ؛ Class Client { / ** * param args * / public static void main (string [] args) {// ننشئ أولاً كائن إمداد الطاقة 220V! Power220 Power220 = New Power220 () ؛ power220.output220v () ؛ // التالي ، نحن ننشئ كائن إمداد الطاقة 12 فولت! IPOWER12 Power12 = New Power12 () ؛ power12.Output12v () ؛ // أخيرًا ، نستخدم محول الطاقة لتحويل مصدر الطاقة 220 فولت إلى مصدر طاقة 12 فولت! System.out.println ("/n ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- System.out.println ("--- ينتهي محول محول الفئة!") ؛3.9 نتائج التشغيل
---- هذا هو مزود الطاقة [220.0V]! ...
---- هذا هو مزود الطاقة [12.0V]! ...
---- محول الطاقة يجري تحويل ...
---- هذا هو مزود الطاقة [12.0V]! ...
--- انتهى تحويل محول الطاقة!
---- محول الطاقة المحول يجري تحويل ...
---- هذا هو مزود الطاقة [12.0V]! ...
---- ينتهي تحويل محول محول الفئة!
3. مبادئ التصميم
1 استخدام مجموعات الكائنات ، برمجة موجهة نحو الواجهة والتجريد
2 مبدأ "مفتوح وإغلاق"
4. استخدام المناسبات
1 عندما تحتاج بنية نظام البرمجيات إلى ترقية أو توسيعها ، ولا تريد التأثير على التشغيل المستقر للنظام الأصلي
2 عندما لا يكون الفرق بين فئات التحويل كبيرة جدًا
3 عندما ترغب في إنشاء فئة قابلة لإعادة الاستخدام يمكن أن تعمل بالاقتران مع فصول أخرى غير مرتبطة أو غير متوقعة
5. مخطط فئة ثابتة لوضع محول الفئة ووضع محول الكائن
لمزيد من المعلومات حول خوارزميات Java ، يمكن للقراء المهتمين بهذا الموقع عرض الموضوعات: "بنية بيانات Java وبرنامج تعليمي الخوارزمية" ، "ملخص" Tips Java ".
آمل أن يكون هذا المقال مفيدًا لبرمجة Java للجميع.