zoukankan      html  css  js  c++  java
  • 关于继承的设计

    我将成员变量称之为类的属性,  将成员函数称之为类的接口

    关于子类继承父类,  比较让我蛋疼的用法就是在子类中直接使用父类的成员变量,  且不说父类完全有可能不是自己设计的, 就算是自己设计的, 也许已经过了N久了, 再次使用父类里面的属性时都要想一下这个属性到底是干什么用的.
    比如当时写了一个类:Parent,  而且也就是在当时, 还写了一个子类:Man,  然后在Man这个类中直接对Parent的属性进行操作.  然后又过了N久,  某一位新人接手先人写的代码,  但是它只拿到了Man的代码,  并没有Parent的代码,  看的时候就会郁闷, 有些属性明明没有,  为毛会在Man里面使用了呢, 当然了,细想一下可以推断出某些属性是在其父类中定义的,  这是简单的继承,  如果对于一个杂而庞大的类网络而言,  这样的写法,  会让后人骂他祖宗十八代.

    人个的看法,  对于一个类而言,  所有的属性都是它自己的特性,  就将这些属性全设置为private吧,  如果某些属性是想让所有外部都可以调用的话,  就对这些属性写两个public的接口,  一个用来读, 一个用来写. 或者是只能读不能写.   再有一些属性是希望子类可以使用, 但是不对外公开的话,  就对这些属性写些protected的接口吧.  即,  想对某个对象属性进行操作,  不管是不是不相关的类,  又或者是子类,  请通过接口来操作!   这样在看子类代码的时候,  就不会有时候看到莫名其妙的对某个属性进行的操作.

  • 相关阅读:
    (转)干货|一次完整的性能测试,测试人员需要做什么?
    (转)JMeter性能测试-服务器资源监控插件详解
    【Android Apk重新签名报错re-sign.jar之解决方法】
    CrackMe_001
    判断二叉树是否是镜像对称
    顺时针打印矩阵
    利用前序遍历和中序遍历构造二叉树
    二叉树的四种遍历方式
    最长回文子串
    同步/异步/阻塞/非阻塞
  • 原文地址:https://www.cnblogs.com/emyueguang/p/3898954.html
Copyright © 2011-2022 走看看