سؤال

أنا أفهم ما: الدولة / هل /. إنه يخلق مجالا، كما هو الحال في جافا، في صفك. ما لا أفهمه هو ما هي نقطة هذا؟ يبدو أنني أراها فقط من الفصول التي تم إنشاؤها عن طريق الصلب التي تمتد الطبقات الأخرى. http://www.fatvat.co.uk/2009/05/Clojure-and-robocode.html أن تكون مثالا واحدا. أنا لا أعرف جافا، وأنا لست على دراية جيدة جدا في البرمجة الموجهة للكائنات. هل يمكن لشخص ما أن يفسر نقطة: الدولة بالنسبة لي، وأين كل شيء يناسب مع جافا interop؟

شكرا جزيلا!

ملاحظة: عندما أقول: الدولة، أشير إلى (: الفئة العامة: الدولة)

هل كانت مفيدة؟

المحلول 3

تحدثت عنها مع Hiredman على قناة #Clojure IRC، وأخبرني أن النقطة الرئيسية لها دولة لكل حالة. منطقي.

نصائح أخرى

: الدولة هي ببساطة طريقة لتقاسم بعض البيانات بين الوظائف التي تم إنشاؤها كجزء من الفئة العامة. فكر في الأمر بأنه هو نفسه تماما مثل بيانات مثيل كائن.

مزيد من المعلومات على state وكيفية تهيئة ذلك يمكن العثور عليها الفئة العامة - كيف يعمل وكيفية استخدامه

من المقال:

  • :state يحدد الطريقة التي سترجع حالة الكائن.
  • :init يحدد اسم المهبل. هذه هي الوظيفة التي يجب أن تعيد متجه. العنصر الأول هو مرة أخرى متجه للحجج إلى منشئ الطبقة الفائقة. في حالتنا، هذا مجرد ناقل فارغ. العنصر الثاني هو حالة الكائن.

باختصار، init إرجاع حالة الكائن ويسمى عند إنشاء مثيل الكائن. state هي طريقة على الفصل، على عكس وظيفة، سترجع نفس القيمة التي تم إرجاعها كعنصر ثان في المتجه الذي تم إرجاعه بواسطة init.

ثم تطول المقالة لإظهار كيفية استخدام الذرة لتتمكن من تغيير حالة الكائن، إذا لزم الأمر.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top