C#访问级别

在面试过程中经常会遇到访问级别的考察问题,今天来个一次性解决。

一、public 访问不受限,直接记住就好。 

二、private 私有的,仅在类的内部可访问,这个也没什么好说的直接记住就好。

三、internal 同一个程序集可访问跟命名空间无关,我们来验证一下:

       首先准备一个类:

namespace Algorithm
{
    //测试访问级别
    public abstract class Visit
    {
        private void private_Add() { }
        public void public_Add() { }
        internal void internal_Add() { }
        protected void protected_Add() { }
        internal protected void internal_protected_Add() { }
    }
}

分别通过不同程序集来检验:

 四、protected 在类的内部和继承类中可访问,这个是不受程序集限制了,虽然在用的时候没毛病,但在笔试中容易混淆,有木有呀

五、internal protected ,这两个修饰符同时增加,这个时候取的是全集,不是并集,且看下图:

 

 总结:了解C#成员访问级别主要是让我们合理使用修饰符,面试过程中出现的频率也非常高,手动敲一遍代码比死记硬背强呀。

猜你喜欢

转载自www.cnblogs.com/heweijian/p/12593358.html