老子有钱儿好汉--.net 继承概念

    关于继承。人的社会中,继承一般发生在有血缘关系的族群中。最直接的例子一般是,儿子继承父亲,包括姓氏、基因、财产和一切可以遗留的东西。但并不代表可以继承所有,因为父亲隐私的那一部分属于父亲独有,不可继承。当然,也可能是继承于族群的其他人,视实情而定。而在面向对象中,继承无处不在,子类继承父类,以访问权限来实现不同的控制规则,称为访问级别

     public,具有最高的访问权限,就像是公司的董事会具有最高的决策权与管理权,因此public开放性最大,不管是否同一个程序集或者不管是否继承,都可以访问

protected,类似于公司业务部门经理的职责,具有对本部门的直接管辖权,在面向对象中就体现为子类继承这种纵向关系的访问约定,也就是只要继承了该类,则其对象就有访问父类的权限,而不管这两个具有继承关系的类是否在同一个程序集中。

      internal,具有类比意义的就是internal类似于公司的职能部门的职责,不管是否具有上下级的隶属关系,人力资源部都能管辖所有其他部门的员工考勤。这是一种横向的职责关系,在面向对象中用来表示同一程序集的访问权限,只要是隶属于同一程序集,对象即可访问其属性,而不管是否存在隶属关系。

      protected internal,可以看做是protected internal的并集,就像公司中掌管职能部门的副总经理,从横向到纵向都有管理权。

      private,具有最低的访问权限,就像公司的一般员工,管好自己就行了。因此,对应于面向对象的开放性最小。

    另外,对象中继承的目的是提高软件复用,而人类中的继承,不也是现实中的复用吗?
阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

老子有钱儿好汉--.net 继承概念

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭