>:string; begin result:=''''刚上市的沙瓤大西瓜,2元钱一斤!''''; end;
function 类_西瓜.被评价():string; begin result:=''''靠,被骗了,根本没熟!''''; end; //============================================================================= 2、在工厂类和水果类单元文件中,修改小贩的工厂方法(这里是修改,已经违反了“开闭原则”)
//============================================================================= 类_西瓜 = class(TInterfacedObject, 接口_水果) function 提示():string; function 被评价():string; end;
{****** 类_西瓜 ******}
function 类_西瓜.提示():string; begin result:=''''刚上市的沙瓤大西瓜,2元钱一斤!''''; end;
function 类_西瓜.被评价():string; begin result:=''''靠,被骗了,根本没熟!''''; end; //=============================================================================
2、区别就在这里了,在工厂类和水果类单元文件中,引入一个新的西瓜小贩类(这里是扩展,不会影响到已有的代码) //============================================================================= 类_西瓜小贩 = class(TInterfacedObject, 接口_小贩) function 工厂(): 接口_水果; end;
{***** 类_西瓜小贩 *****}
function 类_西瓜小贩.工厂(): 接口_水果; begin result:=类_西瓜.Create() end; //=============================================================================