0Pricing
C# Academy · درس

المنشئات والأعضاء الساكنة

أنشئ الكائنات باستخدام المنشئات (بما في ذلك التحميل الزائد والتسلسل)، واستخدم الحقول والأساليب الساكنة للاحتفاظ بالبيانات المشتركة بين جميع المثيلات.

المنشئات والأعضاء الساكنة درس مجاني في C# Academy على CoddyKit. هذا هو الدرس 2 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C# Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C# Academy 3 دروس في المجموع.

نظرة عامة على المُنشئات وStatic

الهدف: إنشاء الكائنات بأمان ومشاركة البيانات بين النسخ.

  • المُنشئات تضبط الحالة المطلوبة
  • التحميل الزائد و& this(...) للتسلسل
  • الحقول والأساليب Static المشتركة بين جميع الكائنات

المُنشئ الأساسي

يعمل المُنشئ عند استدعاء new ويهيّئ الكائن.

using System;

// Constructor sets required data on creation
public class User
{
  public string Name { get; private set; }
  public int Age { get; private set; }

  public User(string name, int age)
  {
    Name = name;
    Age = age;
  }
}

public class Program
{
  public static void Main(string[] args)
  {
    User u = new User("Ada", 28);
    Console.WriteLine(u.Name + " (" + u.Age + ")");
  }
}

التحميل الزائد والتسلسل

استخدم التحميل الزائد للمُنشئات لتسهيل الاستخدام، واستخدم this(...) لإعادة استخدام المنطق.

using System;

// Overloads let you offer defaults; chain with this(...)
public class Point2D
{
  public int X { get; private set; }
  public int Y { get; private set; }

  public Point2D(int x, int y)
  {
    X = x; Y = y;
  }

  public Point2D(int xy) : this(xy, xy) { } // calls the main constructor
}

public class Program
{
  public static void Main(string[] args)
  {
    Point2D p1 = new Point2D(3, 4);
    Point2D p2 = new Point2D(5); // becomes (5,5)
    Console.WriteLine("p1: " + p1.X + "," + p1.Y);
    Console.WriteLine("p2: " + p2.X + "," + p2.Y);
  }
}

الأعضاء Static

الأعضاء Static مشتركة بين جميع النسخ. استدعِ الأساليب Static باستخدام اسم النوع.

using System;

// Static members live on the type (one copy shared)
public class Counter
{
  private static int _created = 0;   // shared count
  public int Id { get; private set; }

  public Counter()
  {
    _created = _created + 1;
    Id = _created;
  }

  public static int CreatedCount()
  {
    return _created;
  }
}

public class Program
{
  public static void Main(string[] args)
  {
    Counter a = new Counter();
    Counter b = new Counter();
    Console.WriteLine("a.Id=" + a.Id + ", b.Id=" + b.Id);
    Console.WriteLine("Total created = " + Counter.CreatedCount());
  }
}

المُنشئ Static والثوابت

يعمل المُنشئ Static مرة واحدة لكل نوع. استخدم const للقيم الحرفية المحددة وقت الترجمة، واستخدم static readonly للقيم التي تُضبط وقت التشغيل.

using System;

public class AppConfig
{
  public const string AppName = "Demo";      // compile-time constant
  public static readonly DateTime StartedAt; // runtime-initialized once

  // Static constructor: runs once before first use of the type
  static AppConfig()
  {
    StartedAt = DateTime.UtcNow;
  }

  public static string Info()
  {
    return AppName + " started at " + StartedAt.ToString("u");
  }
}

public class Program
{
  public static void Main(string[] args)
  {
    Console.WriteLine(AppConfig.Info());
    Console.WriteLine(AppConfig.Info()); // static ctor ran only once
  }
}

نصائح

نصائح:

  • اجعل المُنشئات صغيرة، وتحقق من المدخلات مبكرًا.
  • استخدم التحميل الزائد للقيم الافتراضية الشائعة، وسلّسلها إلى مُنشئ رئيسي واحد.
  • استخدم static عندما تكون البيانات مرتبطة فعلًا بالنوع (مثل العدادات والأدوات المساعدة).

مفهوم الأعضاء Static

تحقق سريع: أي عبارة عن الأعضاء Static صحيحة؟

مراجعة

مراجعة: استخدم المُنشئات لضبط الحالة المطلوبة، والتحميل الزائد والتسلسل لتسهيل الاستخدام، وأضف أعضاء static للبيانات أو الأدوات المساعدة المشتركة بين جميع الكائنات.

الأسئلة الشائعة

هل درس «المنشئات والأعضاء الساكنة» مجاني؟

نعم — نص درس «المنشئات والأعضاء الساكنة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C# Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C# Academy 3 دروس في المجموع.

ماذا ستتعلم في «المنشئات والأعضاء الساكنة»؟

أنشئ الكائنات باستخدام المنشئات (بما في ذلك التحميل الزائد والتسلسل)، واستخدم الحقول والأساليب الساكنة للاحتفاظ بالبيانات المشتركة بين جميع المثيلات. تتمرن على C# Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ C# Academy؟

لا تُشترط خبرة سابقة. C# Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 3.

كم من الوقت يستغرق درس «المنشئات والأعضاء الساكنة»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس C# Academy هذا؟

نعم. كل درس في C# Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. الحقول والخصائص التلقائية ومهيئات الكائنات
  2. المنشئات والأعضاء الساكنة
  3. التغليف والثوابت
← العودة إلى C# Academy