உதாரணம்
using System;
namespace ConsoleApplication1
{
class ProtectedAccess
{
protected string stu= "This string is protected ";
protected void dis(string stu)
{
Console.WriteLine("This fun is protected : " + stu);
}
}
class Program
{
static void Main(string[] args)
{
ProtectedAccess pro = new ProtectedAccess();
Console.WriteLine(pro .stu); // Cannot access protected variable here
pro .dis("Hi !!"); // Cannot access protected function here
}
}
}
வெளியீடு
Error 1 'ConsoleApplication1.ProtectedAccess.stu' is inaccessible due to its protection level
Error 2 'ConsoleApplication1.ProtectedAccess.dis(string)' is inaccessible due to its protection level
பாதுகாக்கப்பட்ட மாறி மற்றும் பாதுகாக்கப்பட்ட அணுகல் வகுப்பில் செயல்பாட்டை பிரதான () செயல்பாட்டில் அணுக முடியாது, ஏனெனில் பிரதான () செயல்பாடு பிரிக்கப்பட்ட வகுப்பில் "நிரல்" இல் உள்ளது.பின்வரும் நிரல் ஒரு பாதுகாக்கப்பட்ட மாறி மற்றும் செயல்பாட்டை மரபுரிமையிலிருந்து எவ்வாறு அணுக முடியும் என்பதை தெளிவுபடுத்துகிறது.
உதாரணம்
using System;
namespace ConsoleApplication1
{
class ProtectedAccess
{
protected string stu= "This string is protected ";
protected void dis(string stu)
{
Console.WriteLine("This fun is protected : " + stu);
}
}
class Program : ProtectedAccess
{
static void Main(string[] args)
{
Program pro = new Program();
Console.WriteLine(pro .stu); // Accessing protected variable
pro .disp("Hi !!"); // Accessing protected function
}
}
}
வர்க்க நிரல் "பாதுகாக்கப்பட்ட அணுகல்" வகுப்பில் இருந்து மேலே உள்ள நிரலில் ஒரு மாற்றத்தை இங்கு செய்துள்ளோம்.
class Program : ProtectedAccess
எனவே, பாதுகாக்கப்பட்ட மாறி மற்றும் பாதுகாக்கப்பட்ட செயல்பாட்டை பிரதான () இலிருந்து அணுகலாம், ஏனெனில் பாதுகாக்கப்பட்ட அணுகல் மாற்றிகளின் அணுகல் நோக்கம் வர்க்கம் அல்லது கட்டமைப்பிற்குள் வரையறுக்கப்பட்டுள்ளது மற்றும் இந்த வகுப்பிலிருந்து பெறப்பட்ட வர்க்கம் (மரபுரிமை(Inherited )).