У меня есть тип ниже, определенный в одной сборке.защищенное внутреннее и защищенное поведение аналогично
public class TestAccessSpecifiers
{
public int Public { get; set; }
protected int Protected { get; set; }
private int Private { get; set; }
public void SetValues()
{
Public = 10;
Protected = 20;
Private = 30;
}
}
public class NewDerived : TestAccessSpecifiers
{
public void SetProtected()
{
Protected = 199;
}
}
В другом типе я потребляя этот тип и независимо от того, даю ли я защищен или защищен внутренним охраняемую собственность, я могу получить к нему доступ из этой другой программы. Тогда в чем разница между установкой обоих.
class Program
{
static void Main(string[] args)
{
TestAccessSpecifiers obj = new TestAccessSpecifiers();
obj.SetValues();
obj.Public = 100;
Console.WriteLine(Convert.ToString(obj.Public));
Console.ReadLine();
}
}
class Derived : TestAccessSpecifiers
{
public void SetNewValues()
{
Public = 200;
Protected = 500;
}
}
И что именно этот вопрос имеет отношение к C? Судя по вашему синтаксису, это C++, а не Java. –
На самом деле это C#. Случайный неверный тег был выбран. Я отредактировал его. – ckv