全部 新建

user:thomas 由使用者建立的 Gists

title:mygist Gists 的標題

filename:myfile.txt Gists 的檔案名稱

extension:yml Gists 的副檔名

language:go Gists 的程式語言

topic:homelab gists with given topic

登錄


全部 新建 登錄

All gists matching topic interface

倒序排序 創建
順序排序 創建
倒序排序 更新
順序排序 更新

timmy / 簡單實作資料庫依賴注入

0 喜歡
0 分支
1 檔案
最後活躍 7 months ago
用 Python 實現資料庫介面,輕鬆切換不同資料庫實作。
abc-class database dependency-injection interface mysql oop python
1 from abc import ABC, abstractmethod
2
3 # 定義一個資料庫介面,規定大家都要有 connect 方法
4 class IDatabase(ABC):
5 @abstractmethod
6 def connect(self):
7 pass
8
9 # 具體實作 MySQL 版資料庫
10 class MySQLDatabase(IDatabase):

timmy / 使用 ABC 定義抽象類別

0 喜歡
0 分支
1 檔案
最後活躍 9 months ago
ABC(Abstract Base Class)允許定義抽象類別,強制子類別實作特定方法,適用於建立統一的介面規範,確保繼承的類別都遵守特定的行為。
abc abstract-class interface oop python
1 from abc import ABC, abstractmethod
2
3 # 定義抽象類別
4 class Animal(ABC):
5 @abstractmethod
6 def make_sound(self) -> str:
7 """所有動物都必須實作此方法"""
8 pass
9
10 # 繼承並實作抽象方法
上一頁 下一頁

由 Opengist 提供支持 ⋅ Load: 31ms⋅

繁體中文
Čeština Deutsch English Español Français Magyar Italiano 日本語 Polski Português Русский Türkçe Українська 中文 繁體中文