تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الدرس السادس عشر - الطرق Methods
#1
كاتب الموضوع : tibo


السلام عليكم ورحمة الله وبركاته


الطرق "Methods" هى طريقك لكتابة برامج إحترافية مما سيوفر عليك تعب وعناء تكرار الأكواد البرمجية تعرف الطريقة فى لغات البرمجة الأخري بالدوال "Functions" ولاكن فى الجافا تسمي "Methods"

شكل الطريقة يكون على الشكل التالي :

محدد الوصول ثم static ثم نوع البيانات الراجعة من الطريقة ثم اسم الطريقة ( نوع واسماء المتغيرات الداخلة للطريقة ) {

جسم الطريقة أو الكود المراد تنفيذه

جملة return ثم القيمة المرجعة

ولا تكتب جملة return إذا كانت الطريقة لا ترجع قيم
}

مثال على ذلك :


كود :
[color=blue]private static int[/color] sum( int x , int y ) {
[color=blue]int [/color]out = x + y ;
[color=blue]return [/color]out;
}
كما فى المثال السابق تم تعريف محدد الوصول للطريقة private أى لا تسخدم إلا داخل الكلاس المعرفة داخلة وتوجد كلمة public أى الطريقة عامة ويمكن إستخدامها من أى كلاس فى البرنامج وإن لم تكتب محدد الوصول تكون الطريقة مرئية فقط للكلاسات داخل الباكج الواحده فقط

ثانيا : كلمة static تستخدم إذا كنت سوف تستخدم الطريقة داخل الكلاس المعرفة داخلة

ثالثاً : نوع القيم التي ترجعها الطريقة

رابعاً : اسم الطريقة ملحوظة على اسم الطريقة يفضل أن يكون حرفها صغيره وإن بدأت بأكثر من مقطع يكون أول المقطع حرف كبير سوف تلاحظ هذا دائماً فى الطرق المدمجة فى حزمة الجافا الأساسية

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

سادساً : جسم الطريقة

سابعا : جملة return ولا حاجة لها إن كانت الطريقة لا ترجع أى قيم .

كود برنامج معرف داخلة عدة طرق وكيفية إستدعائها :


كود :
import java.util.Scanner;
public class Methods{
// هذه هى الطريقة الأساسية التى يعمل منها البرنامج
public static void main( String args[]){
Scanner op=new Scanner(System.in);
System.out.print("Please enter first number :\n");
String number1=op.next();
System.out.print("Please enter your operand + or * or / :\n");
String sign=op.next();
System.out.print("Please enter scond number :\n");
String number2=op.next();
if( sign.equals("+") ){
int number1i=Integer.parseInt(number1);
int number2i=Integer.parseInt(number2);
int o=sumNumbers( number1i , number2i );
String oo=o+"";
double od=Double.parseDouble(oo);
outP(od);
}else if(sign.equals("*")){
double number1d=Double.parseDouble(number1);
double number2d=Double.parseDouble(number2);
double o=multiNumbers( number1d , number2d );
outP(o);
}else if(sign.equals("/")){
int number1i=Integer.parseInt(number1);
int number2i=Integer.parseInt(number2);
double o=divNumbers( number1i , number2i );
outP(o);
}
outP();
} // end main Method

// هذه الطريقة تأخدذ قيمة كسرية ولا ترجع بأى قيمة وإنما تطبع القيمة على الشاشة
public static void outP(double input){
System.out.print(input);
} // end outP Method

// هذه الطريقة لا تأخذ قيم ولا ترجع أيضاً أى قيم
public static void outP(){
System.out.print("\n End Of Program");
} // end outP Method

// هذه الطريقة تقوم بجمع عددين وتعود بقيمة صحيحة
private static int sumNumbers( int num1 , int num2 ){
int out = num1 + num2 ;
return out;
} // end sumNumbers Method

// هذه الطريقة تقوم بضرب عددين صحيحين وتعود بقيمة صحيحة أيضا
private static double multiNumbers(double num1, double num2){
double out = num1*num2;
return out;
} // end multiNumbers Method

// هذه الطريقة تقوم بقسمة عددين صحيحين وتعود بقيمة كسرية
private static double divNumbers(int num1, int num2){
double out = num1/num2;
return out;
} // end divNumbers Method
} // end class
والسلام عليكم ورحمة الله وبركاتة
}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الدرس الخامس عشر - أوامر التحكّم - التكرار RaggiTech 0 643 19-10-12, 12:40 PM
آخر رد: RaggiTech
  الدرس الرابع عشر - أوامر التحكّم - الجمل الشرطية RaggiTech 0 757 19-10-12, 12:38 PM
آخر رد: RaggiTech
  الدرس الثالث عشر - العمليات RaggiTech 0 501 19-10-12, 12:36 PM
آخر رد: RaggiTech
  الدرس الحادي عشر - إستدعاء حزمة الواجهة الرسومية والعمل عليها RaggiTech 0 803 19-10-12, 12:33 PM
آخر رد: RaggiTech
  الدرس العاشر - حزم الجافا (Java Packages) RaggiTech 0 606 19-10-12, 12:32 PM
آخر رد: RaggiTech
  الدرس التاسع - كيفية استخدام UndoManager بالبرامج RaggiTech 0 518 19-10-12, 12:26 PM
آخر رد: RaggiTech
  الدرس الثامن - تخزين البيانات الضخمة بقاعدة البيانات اوراكل بواسطة الجافا RaggiTech 0 740 19-10-12, 12:26 PM
آخر رد: RaggiTech
  الدرس السابع - التعليقات RaggiTech 0 516 19-10-12, 12:18 PM
آخر رد: RaggiTech
  الدرس السادس (في جافا) - البرمجة بالكائنات الشيئية RaggiTech 0 561 19-10-12, 12:14 PM
آخر رد: RaggiTech
  الدرس الخامس- البحث الثنائى فى المصفوفة Binary Search RaggiTech 0 1,259 19-10-12, 12:12 PM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم