簡單工廠的簡單抽象類實現

2021-10-04 05:23:06 字數 974 閱讀 4606

study:底層抽象類;

package com.zhuhuix.startup.test;

public abstract class study

englishstudy:英語學習類--繼承抽象類並實現抽象方法

package com.zhuhuix.startup.test;

public class englishstudy extends study

}

mathstudy: 數學學習類--繼承抽象類並實現抽象方法

package com.zhuhuix.startup.test;

public class mathstudy extends study

}

studyfactory:學習工廠類--根據型別引數返回具體學習類

package com.zhuhuix.startup.test;

public class studyfactory }}

test:測試類--建立工廠類,根據學習型別返回具體學習類,並呼叫具體方法。

package com.zhuhuix.startup.test;

public class test }}

diagrams如下: 

從以上流圖可以看出,具體的產品類都繼承於抽象產品類,不同的產品由工廠統一封裝,並負責建立具體產品,應用端的使用者只需要訪問工廠選擇不同的產品就行了,實現了應用端與具體產品類的解藕。但簡單工廠的最大弊病在於工廠類集中了所有產品類的建立工作,違反了高內聚低耦合的設計原則,另外應用端也需要對工廠中的各種產品都需進行了解,大大增加了應用端的難度係數。

通過簡單工廠模式實現多種支付理解抽象類和介面

類是描述乙個實體的,實體則包含屬性和該屬性可以實現的動作,所以抽象類可以包含屬性和方法。介面是描述行為的,所以介面僅可以定義方法,不可以定義屬性,但可以定義常量。inte ce payinte ce 它們都含有一些公有屬性,比如支付時間 支付金額,流水號,以及設定和獲得這些屬性的方法。所以首先應該定...

抽象類簡單總結 C

抽象類有點忘了,就網上蒐集了一些,方便下次檢視 1 乙個抽象類中可以同時有抽象方法和非抽象方法,也可以同時有抽象屬性和非抽象屬性,但是,有抽象方法或抽象屬性的類一定是抽象類,抽象類中的抽象屬性和抽象方法必須是公有的,因此必須有public修飾符,因為如果是私有的話子類就不 能訪問,無意義,所以一般情...

抽象類 模組的簡單應用

coding utf 8 from abc import abc abstractmethod from collections import namedtuple 為什麼要用抽象類呢 抽象類解決有些基類不能實現方法,如水果不可以有吃的方法,但是子類如蘋果可以有吃的方法,抽象類的方法什麼都不用做,但...