您现在的位置是:首页 > 文章详情

第四回 基类中的修饰符,应该根据你对架构的理解去定义它们,没有绝对的

日期:2017-12-03点击:526

基类中的修饰符,其实就是C#里的那几种修饰符,public ,proteced,internal,privat这四种基础类型,当然也还一个组合类型internal protected,它们都是C#里最基础的东西,今天觉得有必要再说一下。

我还是觉得单讲修饰符,除了不好理解外,还有就是没什么意义,我们一定要把代码放到项目中才有它的价值,不是吗,呵呵。

一 public ,希望在所有地方都使用的成员,如一个获得结果集的方法

1 public virtual IQueryable<TEntity> GetEntities<TEntity>() where TEntity : class 2  { 3 return EF_DB.Set<TEntity>(); 4 }

二 internal,只在本程序集中使用这个成员,对外部不可见,如一个数据层的工厂类,它用来创建数据上下文

1 internal sealed class DbFactory 2  { 3 #region Fields 4 static System.Timers.Timer sysTimer = new System.Timers.Timer(10000); 5 volatile static Dictionary<Thread, DbContext[]> divDataContext = new Dictionary<Thread, DbContext[]>(); 6 #endregion 7 }

三 protected,它只对子类(派生类)公用访问权,这对于基类中的一些只对子类公开的属性与方法比较奏效

 1 /// <summary>  2 /// 统一数据上下文对象  3 /// </summary>  4 protected DbContext EF_DB;  5  6 #region Constructors  7 public DataBase(DbContext ef_DB)  8 : this(() => { return ef_DB; })  9  { } 10 public DataBase(Func<DbContext> func) 11  { 12 this.EF_DB = func(); 13  } 14 #endregion

四 private,本类内部使用的对象,对外部隐藏,一般是对一些复杂的代码进行提取,形成一个独立的单一功能的方法

 1 /// <summary>  2 /// 排序操作方法  3 /// </summary>  4 /// <typeparam name="TEntity"></typeparam>  5 /// <typeparam name="TKey"></typeparam>  6 /// <returns></returns>  7 void AddOrderByList(Expression<Func<TEntity, object>> predicate)  8  {  9  OrderByList.Add(predicate); 10 }

OK,以上四种修饰符大家如果能完全掌握,我觉得就够用了,呵呵。

还有,学习.net的一种方式,就是多看小微自己工程师写的代码,会叫你受益匪浅!

本文转自博客园张占岭(仓储大叔)的博客,原文链接:第四回 基类中的修饰符,应该根据你对架构的理解去定义它们,没有绝对的,如需转载请自行联系原博主。

原文链接:https://yq.aliyun.com/articles/332535
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章