جافا اساليب


  Share  
|


كما استخدمت اساليب اللبنات برنامجك ، ويؤدون المهام التي يمكن ان يطلق عليه مرارا وتكرارا وبأستخدام نفس المدونه لأداء المهمة في كل مرة. الأساسية ولكنها اساسية على اجزاء من هذه الطريقة هي اعلان اسمها ، وعودتها النوع ، المعلمه التوقيع ، والجزء من الشفره الاقواس. الخطوط التالية من المدونه ما هي الا مثال على طريقة الاعلان.

  ساكنة باطلة dosomething () (/ / اضف المدونه هنا) 

وهذه الطريقة تسمى dosomething وعودة نوع من الفراغ ، والتي تشير ببساطة الى أن الطريقة لا عودة الى قيمة. لقد شهدنا بالفعل الكلمات الرئيسية باطل ، وهو عودة نوع من الاسلوب الرئيسي. واذا كان اسلوب dosomething أضيفت الى البرنامج الرئيسي الخاص بك الطبقة ، ثم في الاسلوب الرئيسي من الطبقة لكم سيدعو طريقة dosomething بادخال الشفره التالية :

  Dosomething () ؛ 

ملاحظه الطريقة dosomething تحتاج الى ان تكون جامدة ، في هذه اللحظة لأن الطريقة الرئيسية ، من الذي نحن افترضنا طريقة dosomething ذاهب الى ان يطلق عليه ، هي ايضا ساكنة. Dosomething الطريقة لن تحتاج الى ان تكون جامدة ، واذا انشأنا مثلا من الطبقة التي ينتمي dosomething شأنه.

اذا كنت تريد طريقة ان تعيد قيمة ، عليك ان تحدد عودة نوع من طريقه ، وبعد ذلك عليك ان تستعمل الكلمه الرئيسية في طريقة العودة مدونة تكتل لتحديد القيمه عاد.

  ساكنة دولي getfivedoubled () (عودة 10 ؛) 

التالية طريقة سوف ببساطة العودة بقيمة 10 الى اينما كان يسمى من. السطر التالي من قانون يمكن ان تضاف ، على سبيل المثال ، في الخاص بك والطريقة الرئيسية لاسناد هذه القيمه الى متغير :

  دولى mynumber = getfivedoubled () ؛ 

هذا الخط من المدونه سوف يسند قيمة 10 الى المتغير mynumber.

ملاحظه فقط لأن طريقة getfivedoubled الآن العودة النوع ، فهو لا يعني انه لا يستطيع ان يطلق على ارضه.

  Getfivedoubled () ؛ 

هذا الاسلوب سوف اساسا لا تفعل شيئا ، ولكن قد تكون لديكم طريقة التي يؤدي المهمة المطلوبة ثم العودة وقيمه ، التي تريد أن نتجاهلها.

منهج له قيمة العودة) ليس باطلا) يجب ان يكون للعودة في بيان كل نقطة من الممكن الخروج من الأسلوب. المجمع سوف اتناول اذا كان الطريق بدون عودة القيمه هو ممكن. ومن ناحية أخرى ، اذا كان لديك طريقة مع عودة النوع باطلة وثم يريدون الخروج من اصل طريقه في وقت مبكر ، يمكنك استخدام الكلمات الرئيسية في العودة على ارضه. فعلى سبيل المثال ، اخذ الشفره التالية :

  الجمهور باطلة dosomething () (اذا (== leaveearly صحيح) العودة ؛ / / آخر تواصل مع بقية المدونه) 

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

المعلمه المرور

الطريقة السابقة ، getfivedoubled ، هي جميلة بلا جدوى وغير مريح جدا لانه لن يؤدي الا الى العودة واحدة بقيمة (10). ومع ذلك ، فاننا يمكن ان تخلق الطريقة التي سوف تتخذ في أي عدد ، وهي مزدوجة ، وبعد ذلك إعادة تضاعفت القيمه. ويمكن تحقيق ذلك باستخدام بارامتر المارة. المعلمه مرور تتيح لك تمرير القيم الى وسيلة يمكن ان تكون الطريقة ثم التلاعب. فيما يلى طريقة واحدة تحتوي على المعلمه ، والتي تضاعفت القيمه الجديدة عاد.

  دولى doublenumber (عدد دولي) (عدد *= 2 ؛ عدد العودة ؛) 

وكما ترون ، فان المعلمه هو متغير ودعا عدد من نوع محدد هو دولي وبين الأقواس التي تلي اسم الطريقة. الدعوة الى هذه الطريقة ، يمكن لكم ، على سبيل المثال ، استخدام الشفره التالية :

  / / المزدوجه من 2 يساوي 4 دولي mynumber = doublenumber (2) ؛ / / ثم مضاعفة العدد الحالي من 4 يساوي 8 mynumber = doublenumber (mynumber) ؛ / / ثم رباعية دورته الحالية الى عدد تساوي 32 mynumber = doublenumber (doublenumber (mynumber () ؛ 

هذا السطر الاخير من مدونة سيستدعي طريقة doublenumber مرتين ، الاولى تعود بقيمة ان اي ضعفي قيمة mynumber ، التي تعد بدورها ثم تمرير المعلمه الى الكلمه الثانية في نهاية المطاف الى ان doublenumber العودة النهائية بقيمة 32 ، واسناد ول الى المتغير mynumber.

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

يمكنك ايضا اكثر من المعلمه ، باستخدام فاصله لفصل متتالية المعالم. فيما يلى مثال بسيط ، spiderseyes.java ، تتضمن طريقة مضاعفة ، والتى تتضمن اثنين من المحددات التي هي على حد سواء من نوع دولي ويرجع القيمه للاثنين معا معالم تضاعفت. هنا هو الرمز :

  الطبقة العامة spiderseyes (العامة ساكنة دولي تتضاعف (valuea دولي ، دولي valueb) (العودة valuea * valueb ؛) العامة ساكنة باطلة الرئيسي (الخيط args []) (دولي numberofspiders = 10 ؛ دولي eyesperspider = 8 ؛ دولي totaleyes = تتضاعف (numberofspiders ، Eyesperspider) ؛ system.out.println ( "المجموع عيون =" + totaleyes) ؛)) 

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

طريقة التوقيعات

ومن الممكن ان يكون هناك طريقتين ان نتقاسم نفس الاسم. ومع ذلك ، يجب ان تكون لديها مختلفة التوقيعات لأن خلاف ذلك عندما كنت ترغب في الدعوة الى واحد من الاساليب ، والمجمع ليس هناك من طريقة للتمييز واحدة عن الأخرى ، كما بالاحتجاج الطريقة تقوم على المجمع الاعتراف التوقيع. وبعد ان الاساليب الذي يحمل نفس الاسم ولكن مع اختلاف التوقيعات كما هو معروف اثقال الطريقة.

اسم الطريقة والمعلمه من التوقيع ان طريقة تحديد طريقه للتوقيع. عودة نوع من طريقه لا تؤثر على توقيعه. لذلك لا يمكنك الحصول على طريقتين الذي يحمل نفس الاسم مع مختلفتين العودة القيم مع نفس المعلمه التوقيع.

في المثال السابق ، spiderseyes.java ، كانت لدينا طريقة تسمى مضاعفة ، والتي اخذت اثنين من نوع القيم المعلمه دولي ، وتعود قيمة المحدد تضاعفت القيم معا. واذا كنا شملت ايضا طريقة التي فعلت الشيء نفسه ولكن استخدم نوع من القيم المزدوجه وبدلا من ذلك ، فاننا يمكن ان يخلق مع اسلوب آخر يحمل الاسم نفسه ولكن مع اختلاف المعلمه التوقيع.

  الجمهور دولي مضاعفة ساكنة (أ دولي ، ودولي ب) (عودة * ا ب ؛) العامة ساكنة مضاعفة مضاعفة (أ مزدوجة ، والمزدوجه ب) (عودة * ا ب ؛) 

معلمة التوقيع تحددها انواع البيانات من معالم ولذا فان عددا من المعالم أيضا. دعنا نقول ان لدينا الان وأضاف التالية طريقة جنبا الى جنب مع السابقة طريقتين :

  الجمهور ساكنة طويلة مضاعفة (أ دولي ، ودولي ب) (عودة (الطويلة) (ا * ب) ؛) 

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

  الجمهور ساكنة طويلة مضاعفة (أ طويل ، طويل ب) (عودة * ا ب ؛) 

الآن في هذا العمل لان المعلمه توقيعات مختلفة. اذا كنت غير قادر على تغيير البارامتر في التوقيع بطريقة معقولة ، لا تهتم ؛ مجرد اعطاء اسماء أساليب مختلفة (على سبيل المثال ، multiplyint ، multiplydouble ، multiplylong ، الخ).

هذا هو مقال اضافها غابرييلا جيم بيريس

Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions