جاري التحميل...

المتغيّرات

Console.WriteLine(plant) يكتب leaf، وسطر الكتابة بلا اقتباس. كلمة leaf تقف على سطر الحفظ، تحت الاسم plant. حتى الآن كانت الكلمة بين الاقتباس على سطر الكتابة نفسه، فشاشة مختلفة كانت تعني تعديل ذلك السطر. الاقتباس ينتقل إلى السطر الذي يحفظ الكلمة. الشاشة ما زالت تُظهر leaf. أبقِ اسم الفئة العامة Pine. أنت لا تثبّت SDK من جديد.

اسم يحمل الحروف

افتح ملف Pine. اسم الفئة يبقى Pine. هذه الصفحة لا تعيد تسمية النوع. داخل Main، فوق سطر الكتابة، أضف سطرًا ينشئ اسمًا ويحفظ فيه كلمة: string plant = "leaf";. الكلمة المفتاحية string تقول إن هذا الاسم يحمل حروفًا. plant هو الاسم، ويبدأ بـ p صغير. علامة = تحفظ الكلمة. الاقتباس يحمل leaf، كلها حروف صغيرة، نفس الكلمة التي وضعتها الصفحة السابقة على سطر الكتابة. الفاصلة المنقوطة تنهي هذا السطر. ثم غيّر سطر الكتابة حتى لا يعود فيه اقتباس. يصبح Console.WriteLine(plant);. الاسم plant عارٍ. لا اقتباس قبل p ولا اقتباس بعد t. احفظ الملف.

الملف الذي تحتفظ به

احتفظ بهذا الشكل التعليمي. الاسم plant يحمل leaf. سطر الكتابة يستخدم ذلك الاسم ولا يحتوي اقتباسًا.

the file you keep

csharp
using System;

public class Pine
{
    public static void Main()
    {
        string plant = "leaf";
        Console.WriteLine(plant);
    }
}

اقرأ من الأعلى وقرر ماذا يمكن أن تستقبله الشاشة. using System; يجهّز الأسماء القصيرة ولا يكتب الشاشة. public class Pine يسمّي النوع. لا يكتب الشاشة. public static void Main() حيث يبدأ وقت التشغيل. لا شيء من تلك الكلمات حروف للشاشة. السطر التالي هو الذي ينشئ الاسم. string plant = "leaf"; يحفظ الحروف l وe وa وf في الاسم plant. هذا السطر لا يكتب تلك الحروف على الشاشة. الحفظ ليس كتابة. الشاشة تبقى فارغة خلال هذا السطر. السطر التالي، Console.WriteLine(plant);، هو سطر الكتابة. C# يقرأ الاسم plant، يأخذ الحروف التي يحملها ذلك الاسم، يكتبها، وينهي السطر. الشاشة تُظهر leaf. سطر واحد. بلا اقتباس. حروف الاسم نفسه، plant، ليست على الشاشة. Console ليس على الشاشة. الفاصلة المنقوطة ليست على الشاشة.

شغّله بـ dotnet run. الشاشة تُظهر leaf. إذا أظهرت الشاشة plant، فسطر الكتابة يضع اقتباسًا حول plant. الملف الذي تحتفظ به لا يفعل ذلك. إذا ما زالت الشاشة تُظهر كلمة مقتبسة من الصفحة السابقة، فسطر الكتابة ما زال يستخدم الاقتباس بدل الاسم العاري. انظر إلى الحروف بين الاقتباس على سطر string، وانظر هل يستخدم سطر الكتابة الاسم العاري. أنت لا تعيد تثبيت .NET SDK لشاشة تُظهر الكلمة الخطأ.

سطر الحفظ وسطر الكتابة

أبقِ المهمّتين سهلتين للتمييز.

📊 Variable habits for plant

Line Job Screen
string plant = "leaf"; stores letters in the name nothing from this line
Console.WriteLine(plant); writes the letters the name holds leaf
Console.WriteLine("plant"); writes the quoted letters plant
plant = "stem"; replaces the stored letters nothing from this line alone

غيّر الكلمة، واترك سطر الكتابة مكانه

فائدة الاسم أن سطر الكتابة يمكن أن يبقى ثابتًا بينما تتغيّر الكلمة المحفوظة. تحت أول سطر كتابة، احفظ كلمة جديدة في نفس الاسم، ثم اكتب الاسم مرة أخرى. سطر الحفظ الجديد هو plant = "stem";. لا يبدأ بـ string. plant موجود أصلًا، فهذا السطر يستبدل فقط الحروف التي يحملها الاسم. leaf يُستبدل بـ stem، كلها حروف صغيرة. سطر الكتابة التالي هو مرة أخرى Console.WriteLine(plant);. شكله نفس شكل سطر الكتابة الأول. الشاشة الآن فيها سطران، لأن كل WriteLine ينهي سطره. السطر الأول leaf، من الحروف التي كان الاسم يحملها في تلك اللحظة. السطر الثاني stem، من الحروف التي يحملها الاسم بعد plant = "stem";.

هذا هو الملف الثاني. ليس الملف الذي تحتفظ به. الملف الذي تحتفظ به فيه سطر حفظ واحد وسطر كتابة واحد، وشاشته leaf. استخدم هذا الشكل الثاني عندما تريد رؤية تغيّر الكلمة، ثم أعد سطر الحفظ الواحد وسطر الكتابة الواحد.

the name changes between two lines

csharp
using System;

public class Pine
{
    public static void Main()
    {
        string plant = "leaf";
        Console.WriteLine(plant);
        plant = "stem";
        Console.WriteLine(plant);
    }
}

شغّل dotnet run. الشاشة تُظهر leaf، والسطر التالي من الشاشة هو stem. سطران. leaf في الأعلى لأن أول Console.WriteLine(plant); يعمل بينما plant ما زال يحمل leaf. stem تحته لأن ثاني Console.WriteLine(plant); يعمل بعد plant = "stem";. الاسم plant ليس على أي من سطري الشاشة. إذا قال سطرَا الشاشة كلاهما leaf، فسطر الحفظ الثاني ناقص أو ما زال يقول "leaf". إذا قال كلاهما stem، فسطر الحفظ الأول يقول "stem" أصلًا، أو أول سطر كتابة يقع تحت التغيير. الشاشة تتبع ترتيب أسطر الملف.

لا تكتب string مرة ثانية لنفس الاسم. string plant = "stem"; تحت سطر أنشأ plant أصلًا خطأ مختلف. ذلك السطر يحاول إنشاء plant من جديد. البناء يكتب خطأ ولا يبقى صامتًا. الإصلاح أن تحذف string الثاني وتترك plant = "stem";. الاسم يُنشأ مرة واحدة. الأسطر اللاحقة تغيّر فقط الحروف التي يحملها. على الملف الذي تحتفظ به لا يوجد سطر حفظ ثانٍ أصلًا.

الاقتباس حول الاسم يكتب الاسم

سطر الكتابة في الملف الذي تحتفظ به هو Console.WriteLine(plant); بلا اقتباس. إذا وضعت اقتباسًا حول الاسم، يصبح السطر Console.WriteLine("plant");. ذلك الاقتباس يفعل ما فعله الاقتباس في الصفحة السابقة. يعلّم حروف الشاشة. الحروف بينهما هي p وl وa وn وt. C# لا يبحث عن الاسم، لأن كلمة مقتبسة ليست اسمًا. الاسم plant يمكن أن يحمل ما زال leaf في السطر فوق، والشاشة ما زالت تُظهر plant. الكلمة المحفوظة leaf لا تُكتب، لأن سطر الكتابة لم يستخدم الاسم أبدًا.

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

the name written in quotes

csharp
using System;

public class Pine
{
    public static void Main()
    {
        string plant = "leaf";
        Console.WriteLine("plant");
    }
}

شغّل dotnet run. الشاشة تُظهر plant. سطر واحد. بلا اقتباس. ليس leaf. ليس stem. إذا أردت leaf، يجب أن يكون سطر الكتابة الاسم العاري Console.WriteLine(plant);. الاقتباس يخص سطر الحفظ، حول leaf، لا حول الاسم على سطر الكتابة. اربط عادات Java المتبقية لـ String بالكلمة المفتاحية في C# وهي string في هذه الصفحة. أبقِ اختراع مسارات ASP.NET بعيدًا عن هذه الصفحة.

الاسم يجب أن يوجد أولًا

C# يقرأ الملف من الأعلى. السطر الذي ينشئ الاسم يجب أن يكون فوق السطر الذي يستخدم الاسم. إذا وضعت Console.WriteLine(plant); أولًا، ثم كتبت فقط بعد ذلك string plant = "leaf";، فسطر الكتابة يسمّي plant قبل أن يوجد plant. البناء يكتب خطأ. لا يبقى صامتًا. لا شاشة تُوثق بها بينما البناء يكتب خطأ. الإصلاح أن تعيد سطر string فوق سطر الكتابة.

هذا الملف الرابع هو الترتيب المكسور. ليس الملف الذي تحتفظ به. احتفظ به فقط حتى يكتب البناء الخطأ، ثم أعد سطر string في الأعلى.

the name used before it exists

csharp
using System;

public class Pine
{
    public static void Main()
    {
        Console.WriteLine(plant);
        string plant = "leaf";
    }
}

الشاشة هي الكلمة التي يحملها الاسم

يمكنك الآن حفظ كلمة في اسم وكتابة تلك الكلمة دون وضع الكلمة على سطر الكتابة. string plant = "leaf"; يحفظ leaf. Console.WriteLine(plant); يكتب leaf وينهي السطر. لاحقًا plant = "stem"; يغيّر الكلمة المحفوظة، وWriteLine لاحق لنفس الاسم يكتب stem. الاقتباس حول الاسم يكتب حروف الاسم بدلًا من ذلك. سطر الإنشاء يجب أن يجلس فوق أول سطر يستخدم الاسم. الصفحة التالية تقرأ كلمة تكتبها أثناء تشغيل البرنامج، وتحفظ تلك الكلمة في اسم، حتى تُظهر الشاشة حروفًا لم تُكتب بين اقتباس في الملف.

🧠 اختبر معرفتك

جاهز للبدء

اختبر معرفتك

تحدى نفسك مع هذا الاختبار التفاعلي واكتشف مدى فهمك للموضوع

❓
6
الأسئلة
🎯
70%
للنجاح
♾️
∞
الوقت
🔄
∞
المحاولات

📝 التعليمات

  • اقرأ كل سؤال بعناية
  • اختر أفضل إجابة لكل سؤال
  • يمكنك إعادة الاختبار عدة مرات كما تريد
  • سيتم عرض تقدمك في الأعلى