抽象類和介面在專案中的實踐 封裝繼承的用法

2021-09-11 19:06:55 字數 525 閱讀 1185

最近在專案裡面,需要匯入很多excel表,每個表的資料校驗邏輯也不一樣,不能做成通用方法。

於是就把共同的部分抽取了出來。

思路:介面類:定義要實現的功能

抽象類:實現介面,並將所有需要用到的共同的方法 寫到裡面,比如說所有匯入都需要用到我們專案裡面的執行緒池和阿里雲sdk的工具類,還有各種資料格式校驗方法

子類:具體實現類,繼承抽象類,這樣就可以直接開始寫業務邏輯了。

類圖如下,imortexcel為藉口,定義了匯入excel必須有的方法

abstarctexcelimport裡面則寫了各種通用校驗方法,自定義執行緒池工具等

這樣寫的好處是,當需要匯入許多種不同的表時候,只需要繼承抽象類就想了,最大限度減少重複的**

具體方法如下

抽象類和封裝

建構函式 訪問修飾符 構造方法名 建構函式的作用 就是給屬性進行賦值的 也叫物件的初始化,每乙個類都會有乙個預設的建構函式 建構函式 就是方法名和類名完全一致的函式他沒有 返回值型別也沒有void,如果我們寫了建構函式,那麼預設的建構函式將不存在 不能夠被呼叫 static 關鍵字 靜態的 修飾屬性...

類的抽象類介面類,多型封裝

抽象類,介面類 from abc import abcmeta,abstractmethod class payment metaclass abcmeta 抽象類 介面類 abstractmethod def pay self pass 制定了乙個規範,子類中沒有制定的這個方法就報錯 class ...

抽象方法 抽象類 介面 介面和抽象類的區別

某個父類只知道子類因該包含什麼樣的方法,無法知道這些子類如何實現這些方法。抽象類包含該方法但沒有對該方法的具體實現。有抽象方法的類只能被定義為抽象類,抽象類裡可以沒有抽象方法。抽象方法和抽象類的規則 public abstract class shape private string color p...