Saturday, November 30, 2013

أساسيات البرمجة سي شارب - الفئات الكلاسات C# classes

9:54 PM

Share it Please

أساسيات البرمجة  - الفئات C# classes

ما هي الفئة:-

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




تبدأ تعريف الفئة بالكلمة المحجوزة Class.


 specifier> class  class_name 
{
    // member variables
     specifier>  type> variable1;
     specifier>  type> variable2;
    ...
     specifier>  type> variableN;
    // member methods
     specifier>  type> method1(parameter_list) 
    {
        // method body 
    }
     specifier>  type> method2(parameter_list) 
    {
        // method body 
    }
    ...
     specifier>  type> methodN(parameter_list) 
    {
        // method body 
    }
}

حيث specifier هو محدد الوصول تم شرحه في درس الكبسلة.

حيث type هو نوع البيانات تم شرحه مسبقا.

حيث parameter list هو قائمة الوسطاء التي تمرر من خلال الدالة تم شرحها مسبقا.


مثال مبسط على المفاهيم السابقة.

using System;
namespace BoxApplication
{
    class Box
    {
       public double length;   // الطول
       public double breadth;  // العرض
       public double height;   //الارتفاع
    }
    class Boxtester
    {
        static void Main(string[] args)
        {
            Box Box1 = new Box();        // تصريح عن الكائن الأول من نوع صندوق
            Box Box2 = new Box();        //تصريح عن الكائن الثاني من نوع صندوق
            double volume = 0.0;         // نتغير لتخزين القيمة

            //أسناد القيم لأبعاد الصندوق الاول
            Box1.height = 5.0;
            Box1.length = 6.0;
            Box1.breadth = 7.0;

            //اسناد القيم لابعاد الصندوق الثاني
            Box2.height = 10.0;
            Box2.length = 12.0;
            Box2.breadth = 13.0;
           
            // حساب حجم الصندوق الاول
            volume = Box1.height * Box1.length * Box1.breadth;
            Console.WriteLine("Volume of Box1 : {0}",  volume);

            // حساب حجم الصندوق الثاني
            volume = Box2.height * Box2.length * Box2.breadth;
            Console.WriteLine("Volume of Box2 : {0}", volume);
            Console.ReadKey();
        }
    }
}

طباعة مخرجات الكود السابق.

Volume of Box1 : 210
Volume of Box2 : 1560

الاعضاء الفئة الدوال والكبسلة.

الدالة التي داخل الفئة هي كود أولي في الفئة مثل اي متغير يقوم بإجراء اي عمليات على الكائن.
الخصائص  هي متغيرات للكائن ولكن لايمكن الوصول اليها مباشرة بل عن طريقة خاصية get للقراءة أو set للكتابة للمتغير الخاص .
مثال:- 

using System;
namespace BoxApplication
{
    class Box
    {
       private double length;   //الطول
       private double breadth;  // العرض
       private double height;   // الارتفاع
       public void setLength( double len //خاصية للكتابة
       {
            length = len;
       }

       public void setBreadth( double bre )
       {
            breadth = bre;
       }

       public void setHeight( double hei )
       {
            height = hei;
       }
       public double getVolume()//خاصية للقراءة
       {
           return length * breadth * height;
       }
    }
    class Boxtester
    {
        static void Main(string[] args)
        {
            Box Box1 = new Box();        // تصريح عن الكائن
            Box Box2 = new Box();
            double volume;


            // Declare Box2 of type Box
            // box 1 specification
            Box1.setLength(6.0);
            Box1.setBreadth(7.0);
            Box1.setHeight(5.0);

            // box 2 specification
            Box2.setLength(12.0);
            Box2.setBreadth(13.0);
            Box2.setHeight(10.0);
       
            // volume of box 1
            volume = Box1.getVolume();
            Console.WriteLine("Volume of Box1 : {0}" ,volume);

            // volume of box 2
            volume = Box2.getVolume();
            Console.WriteLine("Volume of Box2 : {0}", volume);
           
            Console.ReadKey();
        }
    }
}

الناتج الكود:-

Volume of Box1 : 210
Volume of Box2 : 1560



Ahmed Ata Almahallawi
Freelancer
IT
IT Help Desk,
SEO experience,PHP,C#,ASPX
Al alami st
gaza -jabaliaGaza Strip
Palestine
ahmed.almahallawi@gmail.com

DOB: 05/10/1984
by +Ahmed Almahallawi 
24/11/2013





0 comments :

Post a Comment