using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
public class A
{
protected int x = 123;
internal protected int y = 123;
void Test()
{
A a = new A();
B b = new B();
//a.x //ok
//b.x //ok
//a.y //ok
//b.y //ok
}
}
public class B : A
{
void Test()
{
A a = new A();
B b = new B();
//base.x ok
//base.y ok
//a.x = 10; erro
//b.x = 10; //ok
//a.y; ok
//b.y; ok
}
}
class Program
{
static void Main(string[] args)
{
A a = new A();
B b = new B();
//a.x = 10; erro
//b.x = 10; erro
//a.y; ok
//b.y; ok
}
}
}
protected 保护访问。只限于本类和子类内部访问;实例不能访问。
需要注意:实例不能访问指的是其他类中。如果是在父类或者子类中的实例当然是可以访问的。