پروگرام کی مثال کے ساتھ C# ایکسیس موڈیفائرز (وضاحتی)۔

اس سبق میں ، آپ سیکھیں گے-

ترمیم کرنے والے تک رسائی حاصل کریں۔

ترمیم کرنے والے تک رسائی حاصل کریں۔ یا C# میں ایکسیس اسپیسفائرز وہ کلیدی الفاظ ہیں جو کلاس پراپرٹی یا طریقہ کار کی نمائش کی وضاحت کے لیے استعمال ہوتے ہیں۔ یہ اس وقت استعمال ہوتا ہے جب آپ نہیں چاہتے کہ دوسرے پروگرام کسی کلاس کی خصوصیات یا طریقے دیکھیں۔ رسائی میں ترمیم کرنے والے رسائی کو محدود کرتے ہیں تاکہ دوسرے پروگرام کسی کلاس کی خصوصیات یا طریقوں کو نہ دیکھ سکیں۔

C#میں ایکسیس موڈیفائر کی 3 اقسام ہیں۔ ہم پروگرام کی مثال کے ساتھ C# میں ایکسیس موڈیفائر سیکھیں گے جیسا کہ ذیل میں بیان کیا گیا ہے۔

نجی رسائی میں ترمیم کرنے والے۔

جب C# میں یہ ایکسیس اسپیسفائر کسی پراپرٹی یا کسی طریقے سے منسلک ہوتا ہے تو اس کا مطلب یہ ہوتا ہے کہ ان ممبروں کو کسی بیرونی پروگرام سے رسائی حاصل نہیں کی جا سکتی۔

آئیے ایک مثال لیتے ہیں اور دیکھتے ہیں کہ جب ہم پرائیویٹ ایکسیس موڈیفائر استعمال کرتے ہیں تو کیا ہوتا ہے۔

آئیے ہماری Tutorial.cs فائل میں موجودہ کوڈ میں ترمیم کریں۔ سیٹ ٹیوٹوریل طریقہ میں ، آئیے پبلک کی ورڈ کو نجی میں تبدیل کریں۔

اب آئیے اپنی Program.cs فائل پر سوئچ اوور کریں۔ آپ دیکھیں گے کہ سیٹ ٹیوٹوریل طریقہ کے تحت ایک سرخ چوکلی لائن ہے۔

چونکہ ہم نے اب اپنی ٹیوٹوریل کلاس میں SetTutorial طریقہ کو نجی قرار دیا ہے ، اس لیے بصری اسٹوڈیو نے اس کا پتہ لگا لیا ہے۔ اس نے اس کو اجاگر کرتے ہوئے صارف کو بتایا ہے کہ اب یہ طریقہ Program.cs فائل سے کام نہیں کرے گا۔

عوامی رسائی میں ترمیم کرنے والے۔

جب C# میں یہ ایکسیس موڈیفائر کسی پراپرٹی یا کسی طریقے سے منسلک ہوتا ہے تو اس کا مطلب یہ ہوتا ہے کہ ان ممبروں کو کسی بھی بیرونی پروگرام سے حاصل کیا جاسکتا ہے۔ ہم پہلے ہی اپنی سابقہ ​​مثالوں میں یہ دیکھ چکے ہیں۔

چونکہ ہم نے اپنے طریقوں کو ٹیوٹوریل کلاس میں عوامی کے طور پر بیان کیا ہے ، اس لیے انہیں Program.cs فائل سے حاصل کیا جا سکتا ہے۔

محفوظ رسائی میں ترمیم کرنے والے۔

جب یہ ایکسیس موڈیفائر کسی پراپرٹی یا کسی طریقے سے منسلک ہوتا ہے تو اس کا مطلب یہ ہوتا ہے کہ ان ممبروں کو صرف موجودہ کلاس سے وراثت میں ملنے والی کلاسوں تک رسائی حاصل کی جا سکتی ہے۔ وراثت کی کلاس میں اس کی مزید تفصیل سے وضاحت کی جائے گی۔

سی # کنسٹرکٹر۔

کنسٹرکٹر کلاس فیلڈز کی اقدار کو شروع کرنے کے عادی ہوتے ہیں جب ان کی متعلقہ اشیاء بنتی ہیں۔ کنسٹرکٹر ایک ایسا طریقہ ہے جس کا نام کلاس کے نام کے برابر ہے۔ اگر کسی کنسٹرکٹر کی وضاحت کسی کلاس میں کی جاتی ہے ، تو یہ پہلا طریقہ فراہم کرے گا جسے جب کوئی شے بنائی جاتی ہے۔ فرض کریں اگر ہمارے پاس ملازم نامی کلاس ہوتی۔ کنسٹرکٹر طریقہ کار کو ملازم () بھی کہا جائے گا۔

کنسٹرکٹر طریقوں کے بارے میں درج ذیل کلیدی باتوں کو نوٹ کرنے کی ضرورت ہے۔

  1. کنسٹرکٹر کے لیے C# ڈیفالٹ ایکسیس موڈیفائر کو پبلک بنانے کی ضرورت ہے۔
  2. تعمیراتی طریقہ کار کے لیے واپسی کی کوئی قسم نہیں ہونی چاہیے۔

آئیے اب دیکھتے ہیں کہ ہم کنسٹرکٹرز کے صارف کو اپنے کوڈ میں کیسے شامل کر سکتے ہیں۔ جب آبجیکٹ بنتا ہے تو ہم ٹیوٹوریل آئی ڈی اور ٹیوٹوریل نام فیلڈز کو کچھ ڈیفالٹ ویلیوز کے لیے کنسٹرکٹر استعمال کریں گے۔

مرحلہ نمبر 1) پہلا قدم ہماری ٹیوٹوریل کلاس کے لیے کنسٹرکٹر بنانا ہے۔ اس مرحلے میں ، ہم مندرجہ ذیل کوڈ کو Tutorial.cs فائل میں شامل کرتے ہیں۔

کوڈ کی وضاحت:-

  1. ہم سب سے پہلے ایک نیا طریقہ شامل کرتے ہیں جس کا نام کلاس جیسا ہے۔ چونکہ یہ کلاس کا ایک ہی نام ہے ، C# اس کو کنسٹرکٹر طریقہ سمجھتا ہے۔ لہذا اب جب بھی کالنگ کا طریقہ اس کلاس کی کوئی شے بناتا ہے ، یہ طریقہ بطور ڈیفالٹ بلایا جائے گا۔
  2. ٹیوٹوریل کنسٹرکٹر میں ، ہم TutorialID کی قدر 0 اور TutorialName کو 'Default' پر سیٹ کر رہے ہیں۔ لہذا جب بھی کوئی شے بنتی ہے ، ان فیلڈز میں ہمیشہ یہ ڈیفالٹ ویلیوز ہوتی ہیں۔

اب آئیے اپنی Program.cs فائل پر سوئچ اوور کریں اور صرف اس لائن کو ہٹا دیں ، جسے SetTutorial طریقہ کہتے ہیں۔ اس کی وجہ یہ ہے کہ ہم صرف یہ دیکھنا چاہتے ہیں کہ کنسٹرکٹر کیسے کام کرتا ہے۔

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Tutorial { public int TutorialID; public string TutorialName; public Tutorial() { TutorialID=0; TutorialName='Default'; } public void SetTutorial(int pID,string pName) { TutorialID=pID; TutorialName=pName; } public String GetTutorial() { return TutorialName; } static void Main(string[] args) { Tutorial pTutor=new Tutorial(); Console.WriteLine(pTutor.GetTutorial()); Console.ReadKey(); } } }

کوڈ کی وضاحت:-

  1. پہلا قدم ٹیوٹوریل کلاس کے لیے ایک شے بنانا ہے۔ یہ 'نئے' مطلوبہ الفاظ کے ذریعے کیا جاتا ہے۔
  2. ہم ٹیوٹوریل نام حاصل کرنے کے لیے ٹیوٹوریل کلاس کا GetTutorial طریقہ استعمال کرتے ہیں۔ اس کے بعد یہ کنسول کو Console.WriteLine طریقہ کے ذریعے دکھایا جاتا ہے۔

اگر مذکورہ کوڈ کو صحیح طریقے سے داخل کیا گیا ہے اور پروگرام کو عمل میں لایا گیا ہے تو ، مندرجہ ذیل آؤٹ پٹ ظاہر ہوگا۔

آؤٹ پٹ:

آؤٹ پٹ سے ، ہم دیکھ سکتے ہیں کہ کنسٹرکٹر کو بلایا گیا تھا اور یہ کہ ٹیوٹوریل نام کی قیمت 'ڈیفالٹ' پر سیٹ کی گئی تھی۔

نوٹ: یہاں قدر 'ڈیفالٹ' کنسٹرکٹر سے لی جاتی ہے۔

خلاصہ

  • C# Access Modifiers یا Access Specifiers کا استعمال کلاس پراپرٹی یا طریقہ کار کی نمائش کی وضاحت کے لیے کیا جاتا ہے۔
  • ایک کنسٹرکٹر کلاس کے فیلڈز کو شروع کرنے کے لیے استعمال کیا جاتا ہے جب بھی کوئی شے بنتی ہے۔
  • کنسٹرکٹر ایک ایسا طریقہ ہے جس کے نام کلاس کے ہی ہیں۔