صفحة 2 من 26 الأولىالأولى 1234567812 ... الأخيرةالأخيرة
النتائج 16 إلى 30 من 378
  1. #16
    الصورة الرمزية MR.dollar
    MR.dollar غير متواجد حالياً مشرف المتداول العربي
    تاريخ التسجيل
    Jun 2009
    الإقامة
    مصر
    المشاركات
    13,851

    افتراضي

    جزاك الله خير من أكثر المواضيع إفادة
    توقيع العضو
    بناء أنظمة تداول آلي ويدوي لفحص سوق العملات ودمجها مع التحليل الفني لإتخاذ القرارات

  2. #17
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    كيفية تفعيل الأزواج:

    1) اما يدوي من خلال المنصة وسيتم توضيحه بصورة--نريد تفعيل زوج GBPJPY -- على المنصة الآن زوجان مفعلان والثالث سيكون GBPJPY

    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	2
الحجـــم:	134.6 كيلوبايت
الرقم:	520947


    2) أو برمجياً من خلال الدالة الخاصة بتفعيل زوج أو أكثر مثل وهي: setSubscribedInstruments
    وهي دالة من نوع void يعني لاتعيد قيمة فقط تغير وضع الزوج الى مفعل.

    وهي أيضا مثل getConsole التي تحدثنا عنها--يعني احد الدوال تحت الانترفيس IContext
    يعني يتم استدعاءها من خلال context ثم نقطة "." ثم اسم هذه الدالة وبين قوسيها الأزواج التي نريد تفعيلها وسيتم شرحها بمثال.


    انت الآن اصبحت تعرف دالتين مهمتين تحت IContext Interface
    واصبحت تعرف متى تحدث الدوال الست الرئيسية في IStrategy Interface
    واصبحت تعرف كيف تحرر برنامجا بسيطا وكيف تشغله في المنصة


    للمذاكرة ابحث وادرس السؤالين التاليين:
    1 - ادرس foreach في الجافا (تكتب for' فقط) --- ماذا تفرق عن for العادية؟
    2 - ادرس من خلال البحث الـ Set Interface و HashSet Class
    في الجافا - ماهي أهميتها ومتى تتذكر استخدامها؟

    عن\ البحث والدراسة ابعد عن هذنك مفهوم الفوركس والمنصة--ادرسها بشكل مجرد كلغة جافا.

  3. #18
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    ثم بعد ذلك ولكن رجاء دون تعمق حتى هذه اللحظة ا قرأ بشكل عام هنا: --يعني قراءة سطحية عابرة في هذه المرحلة
    getSubscribedInstruments
    https://www.dukascopy.com/client/javadoc3/com/dukascopy/api/IContext.html#setSubscribedFinancialInstruments-java.util.Set-boolean-

  4. #19
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    جافا بحتة:

    Set Interface

    الصورة أسفل قد دققتها عدة مرات وهي دقيقة جدا وأصح صورة عن Set عن أي صورة أخرى قد تجدها في أي موقع--اعتقد صور كثيرة جدا
    المربع الذي خلفيته بيضاء يعني Interface بينما اي لون اخر يعني class
    ونعلم ان الـ class implements interface ----- يعني الكلاس تنفذ دوال الانترفيس.

    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	2
الحجـــم:	355.5 كيلوبايت
الرقم:	520952اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	2
الحجـــم:	355.5 كيلوبايت
الرقم:	520952


    وعن foreach ارجو ان تقرأ هنا شرح بشيط بمثال بسيط.
    https://www.w3schools.com/java/java_for_loop.asp

    في السي شارب C# تكتب foreach ومع الجافا تفهم من السياق انها هكذا ولكن تكتب for


    يسمونها for المطورة. وهي مطورة فعلا, ولكن مخصصة للمصفوفات 1) معلومة العناصر سلفاً, 2) ويبدأ الاندكس الخاص بها من 0 ----3) ومقدار الزيادة 1

    السطرين أسفل زي بعض 100% لمصفوفة من خمسة عناصر

    int[] ar={1,2,3,4,5}

    كود:
    for( int i=0 ; i<5 ; i++ ) print(arr[i]) ;
    كود:
    for( int  j : arr ) print(j) ;
    مزية الأخيرة انه الأشياء المعلومة سلفا لايستخدمها

  5. #20
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    ويوجد في الجاقا فصل كبير عن ما يسمى Collection Framework
    وتحته interface Collection و Interface Map

    وتحت Collection Interface يوجد ث انترفيسات فرعية شهيرة وهي:
    List
    Set
    Queue

    هذه كلها تستخدم في بناء المعلومات المجدولة data structure

    نحن هنا نريد تفعيل زوج أو أكثر, لذا هل نختار Set أم List أم Queue ؟؟
    الإنسان الذكي الفاهم يختار ايش؟؟
    اذا فهمت ايش تعني كل واحدة, حتماً ستختار Set لسببين:
    1) عدم التكرار -- - Set تلغي العناصر المكررة بينما List تقبل التكرار (هل منصتك يوجد فيها زوجين بنفس الاسم؟؟؟ )
    2) لايهم الترتيب

    هذه ابرز خاصيتين تميز Set عن النوعين الاخرين--والتطبيق هو الذي يحدد الخيار الأذكى (عدم التكرار --- عدم اهمية الترتيب سواء ابجديا او غير ذلك)
    اضف الى ذلك انهم في دوكاسكوبي مشوا مع الخيار الأذكى وحددوا Set في عملية تفعيل تفعيل الازواج "subscribtion"


    يعني نحن نريد تفعيل عدة أزواج, ونعلم ان الازواج unique--يعني لاتوجد زوجين بنفس الاسم في المنصة, والترتيب هنا لايهمنا--ممكن انا حاب افعل المجنون والاوسي مثلا!-- الحديث عن ترتيبها ابجديا عبث وترف ولايجب اساسا ان يخطر على البال

    نحن نحوم حول كيف برمجيا نفعل زوج أو أكثر بعد ان عرفنا ومن خلال امثلة مصورة كيلفية التفعيل اليديوي من خلال ادوات المنصة.

    وهنا نفترض انكم كمبرمج جافا أو C++ الخ أنك ملم باساسيات ال data structure ويهمنا هنا ابسط هذه الاساسيات, وهو كيفية انشاء كائن لتفعيل مجموعة من الأزواج
    وكلمة مجموعة هي نفسها كلمة Set


    يتبع . . .

  6. #21
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    وهنا نفترض انكم كمبرمج جافا أو C++ الخ أنك ملم باساسيات ال data structure ويهمنا هنا ابسط هذه الاساسيات, وهو كيفية انشاء كائن لتفعيل مجموعة من الأزواج
    وكلمة مجموعة هي نفسها كلمة Set
    نريد تفعيل المجنون والاوسي////// GBP.JPY-----AUDUSD
    لابد أولا نعرف متغير وليكن باسم symbols ويجب ان يكون من نوع Set -- وSet هنا مجموعة بيانات--نوع هذه البيانات حسب حاجتنا هو Instrument وهو نوع صنعته دوكاسكوبي لتعريف الأزواج.

    ولأن Set يعتبر Interface فإنه لايمكن جافويا خلق او انشاء كائنات من خلاله--بل لابد ان يتم الامر من خلال احد الكلاسات المنفذة له مثل HashSet
    لأن HashSet عبارة عن class اذن تستخدم لانشاء الكائنات واخترنا اسم الكائن هنا symbols --راجع مبادئ الجافا.
    وتستخدم كلمة new دائما في الجافا لانشاء الكائن متبوعة بكونتستركتور الكلاس - يعني اسم الكلاس بقوسين وهو هنا HasSet()

    كل هذا نعبر عنه بالسطر التالي:

    كود:
    Set<Instrument> symbols = new HashSet<Instrument>();
    الآن اصبح لدينا كائن اسمه symbols وتم تعريفه بـ أداة التعريف Set ثم تم انشائه من خلال HashSet Constructor
    ولكن لم نمنح قيم.
    دائما ردد الثلاث كلمات: 1) تعريف الكائن "المتغير بمفاهيم OOP" ---- ثم 2) انشائه ثم 3) منحه قيم initializtion
    السطر السابق خلق مجموعة ولكن فارغة "فاي" -- مجموعة دون عناصر ونريد الإضافة لها:
    يوجد مايسمونه algorithms وهي دوال خاصة من نوع static وعند المتخصصين جدا لايستخدمونها كمرادف لكلمة method
    ومنها مع Set دالة add ووظيفتها إضافة العناصر للمجموعة --

    من خلال اسم الكائن "المتغير symbols" يتم المرور لهذه الدالة الخاصة ومن خلال أداة المرور نقطة "."

    نضيف أولا المجنون gbpjpy--لابد ان تكون الكتابة صحيحة مثل ماهو موجود في المنصة:
    يتم الأمر على النحو التالي:
    كود:
    symbols.add(Instrument.GBPJPY);
    symbols.add(Instrument.AUDUSD);
    الآن اصبح لدينا مصفوفة او مجموعة فيها عنصرين وهما GBPJPY و AUDUSD
    هل تم تفعيلها؟؟؟ ج: لا---حتى الان نحن خارج Jforex ونتحدث جافا عامة.

    لتفعيلها نستخدم الدالة المصصممة لهذا الغرض وهي setSubscribedInstruments وتتكون من متغيرين:
    الأول المجموعة وهي هنا symbols
    والثاني من نوع boolean ونختاره true للتفعيل و false لالغاء التفعيل وحذذفها من القائمة المرئية في المنصة.

    يتم الامر على النحو التالي:
    كود:
    context.setSubscribedInstruments(symbols
    , true);
    لاحظ تم العبور الى setSubscribedInstruments من خلال متغير من نوع IContext --- لماذا؟
    ج: راجع الردود السابقة فقد تم شرحها بالتفصيل الممل.

    قبل تطبيق الخبير اسفل--اولا الخ تفعيل كل العملات او اترك واحدا على الاقل: ثم طبق الخبير--هل تلاحظ ظهور هذين الزوجين اذا لم يكونا موجودين؟؟
    جوابك يجب ان يكون نعم.

    س: اين يجب ان نضع الاكواد اعلاه.
    ج: الافضل تحت دالة OnStart لأن التفعيل يتم مرة واحدة ويصبح من البلاهة وضعها تحت OnTick او غيرها--تفعيل المفعل؟؟؟ !! واثقال البرنامج!!

    انسخ الكود اعلاه ثم حفظ ثم كمبلة ثم تطبيق مع مراقبة ---لاتنسى رؤية الازواج في المنصة قبل التطبيق لتلاحظ الفرق وترى اضافة هذين الزوجين للقائمة اذا كانت اساسا غي.

    كود:
    package jforex;
    import java.util.*;
    import com.dukascopy.api.*;
    public class SalmanExpert_03 implements IStrategy
    {
        private IContext context;
        public void onStart(IContext context) throws JFException
        {
            Set<Instrument> symbols= new HashSet<Instrument>();
            symbols.add(Instrument.AUDUSD);
            symbols.add(Instrument.GBPJPY);       
            context.setSubscribedInstruments(symbols, true);
        }
        public void onAccount(IAccount account) throws JFException {}
        public void onMessage(IMessage message) throws JFException {}
        public void onStop() throws JFException {}
        public void onTick(Instrument instrument, ITick tick) throws JFException {}
        public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException {}
    }
    انظر للصورة--اضاف الزوجين--اصبحت مفعلة-- واضاف ايضا usdjpy؟؟؟ هل تعلم لماذا؟؟


    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	2
الحجـــم:	184.5 كيلوبايت
الرقم:	520954

    والخبير شغال--اضغط رايت كلك على نافذة العملات المفعلة--نافذة instruments
    ثم اختر remove all --- هل سيزيلها كلها؟؟
    اوقف الخبير
    هل سيلغي كل شيء؟
    سيلغي كل شيء الا الازواج الاجبارية وهي الازواج التي يوجد عليها 1) صفقات مفتوحة او 2) انتظار او 3) لديها تشارت مفتوح.

  7. #22
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    واذا حاولت unsubscribe من أي زوج قام الخبير بتفعيله والخبير شغال لن ينجح الامر معك - وستظهر لك الرسالة التالية:
    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	2
الحجـــم:	33.2 كيلوبايت
الرقم:	520955

  8. #23
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    ذكرنا انك لو وضعت false سيلغي التفعيل
    تصحيح:
    لايتم الالغاء الا من خلال دالة أخرى معاكسة اسمها unsubscribeInstruments(java.util.Set<Instrument> symbols) وتوجد تحت IConsole أيضا

    وكما تلاحظ المتغيرات داخل اقواسها من نوع Set أيضا.

    ضع هذا السطر مكان السطر المعاكس له في البرنامج-

    context.unsubscribeInstruments(symbols);

    -وسيلغي برمجيا تفعيل الأزواج التي حددتها في الكود, احرص على اختيار ازواج مفعلة أساسا لترى الإلغاء مع التنبيه ان 1) أي زوج عليه صفقة او 2) له تشارت مفتوح او 3) تحت سيطرة خبير اخر يفرض تفعيله لن يلغى حتى زوال هذه الأمور مثل اغلاق التشارت واغلاق الصفقات و تعطيل الخبير الاخر.

    الان أصبحت تعرف 3 دوال من دوال IConsole -- وهو أداة الربط أو المرور مع سستم المنصة.

  9. #24
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    الان أصبحت تعرف 3 دوال من دوال IConsole -- وهو أداة الربط أو المرور مع سستم المنصة.
    تصحيح IContext

    الآن لدينا أزواج مفعلة في المنصة -- هل يوجد دالة تكشتف الأزواج المفعلة برمجياً؟
    بالعين المجردة نحن نعرفها ولكن الخبير يريد ان يبني صفقاته على الأزواج المفعلة ولتكن ال 28 زوج؟
    كيف للخبير ان يعرفها؟؟

    ج: من خلال دالة: getSubscribedInstruments

    اضف السطر التالي اخر دالة OnStart


    كود:
            context.getConsole().getOut().println(this.context.getSubscribedInstruments());
    سيطبعها في كونسول المنصة على شكل Set -- يعني بين قوسين على هذا النحو ويفصل بينهم فواصل--كما هو الأمر في الجافا العادية.


    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	1
الحجـــم:	101.9 كيلوبايت
الرقم:	520956

    انظر للصورة, وراجع دروس الجاف الخاصة ب Set وتبيعاتها مثل HashSet او HashLinkedSet لتعرف كيف تحدد عنصر معين حسب مكانها في المصفوفة او تحذف الخ دوالها

  10. #25
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    وبمناسبة الحديث عن انواع ال Collections---لو جربت List وتبيعتها ArrayList مكان Set وتبيعتها HashSet---هل سيقبلها البرنامج؟
    ؟
    لن يقبلها لان بارامترز setSubscribedInstruments أو getSubscribedInstruments أو unsubscribeInstruments يتم انشائها من خلال HashSet (الكلاس المنفذ لدوال Set) فقطعت علينا دوكاسكوبي طريق الاجتهاد وأصبحت الأمور صارمة ومحددة وواضحة وليس لها الا جواب واحد ولاتقبل التخبط
    .
    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	1
الحجـــم:	40.7 كيلوبايت
الرقم:	520973

    اريدك ان تتصور الأوامر Orders -- هل تتوقع نستخدم Set او List ؟؟؟
    الأوامر بعض قيم أعمدة جداولها قد تتكرر--مثلا انت قد يكون لديك 100 صفقة على eurusd------ يعني هذا الزوج تكرر 100 مرة!!!
    وأيضا سعر الدخول قد يتكرر وقد لايتكرر---مجرد وجود احتمال التكرار يجعلك تختار List



    اقتباس المشاركة الأصلية كتبت بواسطة MR.dollar مشاهدة المشاركة
    جزاك الله خير من أكثر المواضيع إفادة
    وإاياكم اخي أسامة و بالتأكيد اعتز بمعرفتك واعتز بشهادتك


    لايتم الالغاء الا من خلال دالة أخرى معاكسة اسمها unsubscribeInstruments(java.util.Set<Instrument> symbols) وتوجد تحت IConsole أيضا
    تصحيح: IContext
    آخر تعديل بواسطة سلمان_العتيبي ، 05-03-2020 الساعة 07:28 AM

  11. #26
    الصورة الرمزية سميرعلي
    سميرعلي غير متواجد حالياً عضو نشيط
    تاريخ التسجيل
    Jan 2020
    الإقامة
    ألمانيا
    المشاركات
    1,270

    افتراضي

    مجهود تشكر عليه , شكلها ستكون دورة قوية، هل من بعد هذة الدورة ممكن صنع اي مؤشر او اكسبيرت وهل تغني عن ال mql ؟
    آخر تعديل بواسطة سميرعلي ، 05-03-2020 الساعة 07:43 AM

  12. #27
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    اؤمن بالأمثلة المكثفة واؤمن أكثر بالتكرار الملل في بدايات اي علم

    مثال على OnBar
    كود:
     public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar)

    البارامترز التي تراها period و askBar و bidBar و instrument
    للأهمية اريدك ان تطبعها في الكونسول وتراقب لمدة خمس دقائق-يعني تطبع أولا أي واحد من الثلاثة مع instrument -- واحرص ان لايكون عدد الأزواج المععلة اكثر من 2 او ثلاثة. اثنين يكفي

    كود:
    package jforex;
    import java.util.*;
    import com.dukascopy.api.*;
    public class SalmanExpert_04 implements IStrategy
    {
        private IContext context;
        public void onStart(IContext context) throws JFException
        {
                this.context=context;
        }
        public void onAccount(IAccount account) throws JFException {}
        public void onMessage(IMessage message) throws JFException
        {
            }
        public void onStop() throws JFException {}
        public void onTick(Instrument instrument, ITick tick) throws JFException {}
        public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException
        { 
            context.getConsole().getOut().println("OnBar: "+instrument+"    "+period);
        }
    }
    حفظ ثم كمبلة ثم تشغيل من المنصة--وارجو ان تراقب حتى تتشرب هذه المفاهيم وتصبح فيلسوفها-دائما عند التعلم تصبر وابتعد عن العجلة والمناقز.

    الكود أعلاه يطبع مسمى الدالة كلمة OnBar ثم الزوج اسم الزوج الذي صار عليه تغير تسبب بإاثرة أو عمل OnBar ثم الفريم الذي حدث--يعني اللي صار عليه شمعة جديدة او بار جديد---لاتنسى مسمى الدالة OnBar

    الناتج مصور:: ليش يوجد زوجين اخرين على فريم الدقيقة باسم SAN.FR/EUR و IMT.GB/GBX
    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	1
الحجـــم:	317.4 كيلوبايت
الرقم:	520974

  13. #28
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    الآن وهو الأهم ننتقل للمتغير الأخر bidBar نفس الكود السابق ولكن نضع المتغير birBar مكان الفريم period
    كود:
            context.getConsole().getOut().println("OnBar: "+instrument+"    "+bidBar);
    هل لاحظت بعد التشغيل؟؟ لهذه المتغير الوحيد طبع عدة قيم, وبالتالي هذا متغير كائني(له عدة قيم بنوع أو أوكثر) وليس متغير بسيط (له قيمة واحدة من نوع واحد مثل int)
    فهذا المثال مدخل لما سنتحدث عنه اليوم, استدعاء احد قيم الكائن مع الرجوع المتكرر لـ API دوكاسكوبي.

    انظر للصورة أي متغير من نوع IBar عبارة عن كبسولة لست متغيرات او قيم. (تم كبسلتها تحت bidBar وهو متغير انت اخترت اسمه هكذا وممكن تغيره)
    ترى:

    1-وقت البارة --- بالملي سكند منذ سنة 1970--يعني مثل الميتا تريدر
    2-الافتتاح O
    3- الاغلاق C
    4-الهاي H
    5-اللو L
    6-الفوليوم V

    وهي بيانات الشمع المنتهية --يعني اخر شمعة انتهت--يعني الشمعة رقم 1

    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	1
الحجـــم:	259.2 كيلوبايت
الرقم:	520976


    وهذه الاسعار مبنية على Bid ولكن اذا تريدها مبنية على Ask اختر طباعة askBar بدلا من bidBar

  14. #29
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    كيف تستخلص قيمة واحدة من هذه القيم ذات العلاقة بالمتغيرين من نوع IBar؟
    عم عدد المتغيرات او الدوال تحت IBar مع دوكاسكوبي؟

    استخلاص قيمة واحدة مر علينا كثيرا ويحدت باستخدم النقطة "." --- النقطة تسمى access modifier
    مثلا جملة الطباعة فيها 3 نقاط وجملة استدعاء تفعيل الازواج نرى هذه النقطة وهدفها استخلاص دالة او قيمة من الكلاس ذي العلاقة.
    IContext مثلا تحتها عشرات الدوال--ولكن اذا اردنا احد هذه العشرات نستخدم النقطة ونحدد هذه الدالة بالاسم ولاعلاقة لنا بالبقية.

  15. #30
    تاريخ التسجيل
    Mar 2020
    الإقامة
    السعودية
    المشاركات
    8,531

    افتراضي

    في البرنامج ضع نقطة "." بعد bidBar في الصورة--ستلاحظ الاعضاء ذات العلاقة بهذا المتغير من نوع IBar --
    1) بعضها مباشر -- يعني ترى اخر السطر IBar بالرمادي
    2) بعضها موروث inherited غير مباشر لاباء IBar مثل Object و ITimeData


    اضغط على الصورة لعرض أكبر

الاســـم:	4544.png
المشاهدات:	0
الحجـــم:	107.1 كيلوبايت
الرقم:	520977


    ارجع لموقع دوكاسكوبي API:
    اضغط على الصورة لعرض أكبر

الاســـم:	4543.png
المشاهدات:	1
الحجـــم:	102.0 كيلوبايت
الرقم:	520978


    ستجد 5 دوال مباشرة وهي الهاي واللو والاوبن والاغلاق و الفوليوم
    ودالة غير مباشرة وهي الوقت getTime للبارة -- موروثة من أعلى


    نريد الان ان تطبع فقط قيمة واحدة (فيما بعد سنقول اختيار قيمة واحدة حكمت استارتيجيتك باستخدامها)

    دعنا نختار الاغلاق getClose()

    كود:
            context.getConsole().getOut().println("OnBar: "+instrument+"    "+bidBar.getClose());

    اضغط على الصورة لعرض أكبر

الاســـم:	4542.png
المشاهدات:	0
الحجـــم:	82.7 كيلوبايت
الرقم:	520979


    من غير النقطة طبع الكل
    بالنقطة طبع عنصر واحد من الكل

    جافا: Fields+Methods = Members

صفحة 2 من 26 الأولىالأولى 1234567812 ... الأخيرةالأخيرة

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17