عند كتابة برنامج حاسبة ، يمكنك فصل منطق العمل عن الشاشة ، ويتم تغليف منطق العمل في فئة (تغليف) ؛ إذا كنت ترغب في إضافة عملية جديدة ، فيمكنك أولاً إنشاء فئة من التشغيل الأساسي ، ثم يتم مورث عمليات مختلفة من فئة التشغيل وتطبيق الوظيفة الافتراضية GetResult (). في هذا الوقت ، تتطلب إضافة عملية جديدة فقط فئة جديدة ، أي أنه لا توجد عمليات سابقة مطلوبة للمشاركة في التجميع. كيف أسمح للحاسبة بمعرفة أي عملية أريد استخدامها؟ يجب اعتبار فئة منفصلة للقيام بهذه العملية لإنشاء مثيلات ، وهذا هو المصنع. إنشاء فئة OperationFactory ، تمرير في المعلمات ، ويمكن للدالة CreateOperate إنشاء كائن مناسب.
رمز Java كما يلي:
الطبقة العامة OperationFactory {Public Static Abstract Class Operation {private double _numbera = 0 ؛ private double _numberb = 0 ؛ public double get_numbera () {return _numbera ؛ } public void set_numbera (double _numbera) {this._numbera = _numbera ؛ } public double get_numberb () {return _numberb ؛ } public void set_numberb (double _numberb) {this._numberb = _numberb ؛ } مجردة مزدوجة getResult () ؛ // TODO TOD AUTO CONTRUCTOR CONTER} تمتد عملية الطبقة الثابتة العامة للعملية {double getResult () {double result = get_numbera () + get_numberb () ؛ نتيجة العودة }} public static class operationsub يمتد العملية {double getResult () {double result = get_numbera () - get_numberb () ؛ نتيجة العودة }} العملية الثابتة العامة createOperate (تشغيل السلسلة) {Operation Operator = null ؛ if (proegrate.equals ("+")) {properator = new OperationAdd () ؛ } else if (proegate.equals ("-")) {properator = new OperationSub () ؛ } مشغل الإرجاع ؛ } public static void main (string [] args) {Operation Operator ؛ عامل التشغيل = operationFactory.CreateOperate ("+") ؛ Operator.set_numbera (1) ؛ Operator.set_numberb (2) ؛ النتيجة المزدوجة = المشغل. getResult () ؛ }}ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.