如果抽象类中包含了具体实现的方法,那么使用抽象类测试(一)中的抽象类测试方式就很勉强了,因为抽象类的具体方法有可能被继承该抽象类的具体子类所覆盖,导致测试偏差现象发生。对于这样的测试场景,可以引入静态内部类进行抽象类变相实例化测试,这里引入Commodity抽象类实现这种设计,该类属性,抽象方法和实例方法的具体描述如下:
commodity_name属于Commodity类实例私有属性,用于记录Commodity类实例的name值
commodity_price属于Commodity类实例私有属性,用于记录Commodity类实例的price值
getCommodity()工厂方法,返回一个Commodity实例
changerName()改变Commodity实例名称
changerPrice()改变Commodity实例价格
getCommodityName()取得Commodity实例名称
getCommodityPrice()取得Commodity实例价格
setCommodityName()