כיצד להשתמש בקונסט, בקריאה בלבד ובסטטי ב- C #

מילות המפתח const, readonly ו- static משמשות לעתים קרובות בעת תכנות ב- C #. עם זאת, בעוד שלמילות מפתח אלה יש הבדלים חשובים, יש להן גם קווי דמיון שלעתים מקשים לדעת מתי להשתמש באיזה. מאמר זה דן במילות המפתח הקבועות, הסטטיות והקריאות בלבד ב- C #, כיצד הן משוות וכיצד עלינו להשתמש בהן ביישומי C # שלנו.

כדי לעבוד עם דוגמאות הקוד המופיעות במאמר זה, עליך להתקין במערכת Visual Studio 2019 שלך. אם עדיין אין לך עותק, תוכל להוריד את Visual Studio 2019 כאן. 

צור פרויקט יישום קונסולה ב- Visual Studio 2019

ראשית, בואו ניצור פרויקט יישומי קונסולת .NET Core ב- Visual Studio. בהנחה ש- Visual Studio 2019 מותקן במערכת שלך, בצע את הצעדים המתוארים להלן כדי ליצור פרויקט יישום חדש של מסוף ה- NET Core ב- Visual Studio.

  1. הפעל את Visual Studio IDE.
  2. לחץ על "צור פרויקט חדש".
  3. בחלון "צור פרויקט חדש" בחר "יישום קונסולה (.NET Core)" מרשימת התבניות המוצגות.
  4. הקש "הבא.
  5. בחלון "הגדר את הפרויקט החדש שלך" שמוצג הבא, ציין את השם והמיקום של הפרויקט החדש.
  6. לחץ על צור.

פעולה זו תיצור פרויקט יישום קונסולת .NET Core חדש ב- Visual Studio 2019. נשתמש בפרויקט זה כדי להמחיש את השימוש במילות המפתח const, קריאה בלבד וסטטיות ב- C # בחלקים הבאים של מאמר זה.

השתמש במילת המפתח const ב- C #

מילת המפתח const (קריאה: קבועה) ב- C # משמשת להגדרת משתנה קבוע, כלומר משתנה שערכו לא ישתנה במהלך חיי התוכנית. מכאן שחובה להקצות ערך למשתנה קבוע בזמן הכרזתו.

ערך זה של משתנה קבוע מכונה גם ערך "זמן הידור". משתנים המוצהרים באמצעות מילת המפתח const מכונים גם קבועי זמן הידור. יש לציין כי משתנה קבוע אינו משתנה, כלומר, לא ניתן לשנות את הערך המוקצה למשתנה קבוע מאוחר יותר.

קטע הקוד הבא ממחיש כיצד ניתן להגדיר קבוע זמן הידור באמצעות מילת המפתח const ב- C #.

const string connectionString = "ציין כאן את מחרוזת חיבור מסד הנתונים שלך.";

שים לב שעליך להקצות ערך למשתנה קבוע בזמן שאתה מגדיר אותו. שים לב גם שאתה לא יכול להשתמש במילת המפתח const כדי ליצור אובייקט קבוע. ניתן להחיל את מילת המפתח const רק על סוגי הנתונים הפרימיטיביים (כגון ints, floats, chars ו- booleans) ומחרוזות. בואו נבין את השימוש בקונסט עם דוגמה.

שקול את הכיתה הבאה בשם מחבר. אנו נותנים למחלקת המחברים רק כמה מאפיינים כדי שיהיה פשוט.

מחלקה ציבורית מחבר

    {

        ID מזהה ציבורי {get; מַעֲרֶכֶת; }

        מחרוזת ציבורית FirstName {get; מַעֲרֶכֶת; }

        מחרוזת ציבורית LastName {get; מַעֲרֶכֶת; }

        כתובת מחרוזת ציבורית {get; מַעֲרֶכֶת; }

    }

כעת, אם תנסה ליצור אובייקט קבוע של מחלקת המחבר באמצעות מילת המפתח const, תבחין בשגיאת האוסף המוצג באיור 1 להלן.

שגיאה זו מציינת כי לצד ימין של מפעיל ההקצאה צריך להיות ערך קבוע כדי לספק את הביטוי. מכיוון שההצהרה new Author()אינה קבועה, ההקצאה אינה תקפה ומכאן השגיאה.

השתמש במילת המפתח הקריאה ב- C #

ניתן להשתמש במילת המפתח הקריאה להגדרת משתנה או אובייקט כקריא בלבד. המשמעות היא שניתן להקצות למשתנה או לאובייקט ערך בהיקף הכיתה או בבנאי בלבד. אינך יכול לשנות את הערך או להקצות מחדש ערך למשתנה או אובייקט הקריאה בשום שיטה אחרת פרט לבנאי.

בואו נבין זאת בדוגמא. שקול את הכיתה הבאה בשם DbManager.

מחלקה ציבורית DbManager

    {

        חיבור מחרוזת לקריאה ציבורית

        "ציין כאן את מחרוזת חיבור מסד הנתונים שלך.";

        DbManager ציבורי ()

        {

            connectionString = "אתה יכול להקצות מחדש ערך כאן.";

        }

        הקצאה מחדש בטלנית ציבורית ()

        {

            connectionString = "זה לא מותר";

        }

    }

הקוד שלעיל לא יתכנס ויוצג בפניך השגיאה המוצגת באיור 2.

השתמש במילת המפתח הסטטית ב- C #

ניתן להשתמש במילת המפתח הסטטית ב- C # על משתנה, שיטה או אובייקט. שים לב שחבר סטטי של מחלקה שייך לסוג האובייקט ולא למופע של הסוג. במילים אחרות, לחברים סטטיים יש גישה עם שם המחלקה, ולא שם של מופע. 

שקול את המחלקה הבאה בשם Utility המכילה שיטה סטטית.

שירות בכיתה ציבורית

    {

        סטטי ציבורי בטל SomeMethod ()

        {

            // כתוב כאן את הקוד שלך

        }

    }

אינך יכול להתקשר לשיטה SomeMethod()באמצעות מופע של מחלקת השירות. במקום זאת, עליך להתקשר לשיטה זו באמצעות התחביר הבא.

Utility.SomeMethod ();

אותו כלל חל על משתנה סטטי או אובייקט סטטי. אתה יכול להתייחס לחבר סטטי בכיתה רק באמצעות התחביר המוצג להלן.

ClassName . חבר;

אוֹ

ClassName . חבר();

בנאי כיתה יכול להיות סטטי. בונה סטטי של כיתה משמש לאתחול החברים הסטטיים של הכיתה. עם זאת, קונסטרוקטור סטטי של כיתה אינו יכול לקבל פרמטרים.

כלל לקונסט, לקריאה בלבד ולסטטי

להלן כלל האצבע שתוכל לעקוב אחריו בעבודה עם מילות המפתח const, קריאה בלבד וסטטיות. השתמש במילת המפתח const כאשר הערך הכלול במשתנה לעולם לא ישתנה במהלך חיי היישום. השתמש במילת המפתח הקריאה בלבד כאשר אינך בטוח אם הערך של משתנה של אובייקט צריך להשתנות אך ברצונך למנוע ממחלקות אחרות לשנות את הערך. השתמש במילת המפתח הסטטית כאשר אתה רוצה שחבר בכיתה ישתייך לסוג ולא למופע של הסוג.

כיצד לעשות יותר ב- C #:

  • כיצד להשתמש בהערות נתונים ב- C #
  • כיצד לעבוד עם GUIDs ב- C # 8
  • מתי להשתמש בכיתה מופשטת לעומת ממשק ב- C #
  • כיצד לעבוד עם AutoMapper ב- C #
  • כיצד להשתמש בביטויי למבדה ב- C #
  • כיצד לעבוד עם נציגי Action, Func ו- Predicate ב- C #
  • כיצד לעבוד עם נציגים ב- C #
  • כיצד ליישם לוגר פשוט ב- C #
  • כיצד לעבוד עם תכונות ב- C #
  • כיצד לעבוד עם log4net ב- C #
  • כיצד ליישם את דפוס עיצוב המאגר ב- C #
  • כיצד לעבוד עם השתקפות ב- C #
  • כיצד לעבוד עם מערכת קבצים ב- C #
  • כיצד לבצע אתחול עצל ב- C #
  • כיצד לעבוד עם MSMQ ב- C #
  • כיצד לעבוד עם שיטות הרחבה ב- C #
  • איך לנו ביטויים למבדה ב- C #
  • מתי להשתמש במילת המפתח ההפכפכה ב- C #
  • כיצד להשתמש במילת המפתח תשואה ב- C #
  • כיצד ליישם פולימורפיזם ב- C #
  • כיצד לבנות מתזמן משימות משלך ב- C #
  • כיצד לעבוד עם RabbitMQ ב- C #
  • איך לעבוד עם ציצית ב C #
  • חקר שיטות וירטואליות ומופשטות ב- C #
  • כיצד להשתמש ב- Dapper ORM ב- C #
  • כיצד להשתמש בתבנית העיצוב במשקל זבוב ב- C #