欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

python 抽象類作用

錢艷冰2年前7瀏覽0評論

Python是一門功能強大的面向對象編程語言,提供了許多抽象化機制,其中之一就是抽象類。抽象類是不能被實例化的類,在Python中通過聲明一個或多個方法為抽象方法來定義抽象類。

from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def get_area(self):
pass
@abstractmethod
def get_perimeter(self):
pass
class Rectangle(Shape):
def __init__(self, width, height):
self.width = width
self.height = height
def get_area(self):
return self.width * self.height
def get_perimeter(self):
return 2 * (self.width + self.height)
class Triangle(Shape):
def __init__(self, base, height):
self.base = base
self.height = height
def get_area(self):
return 0.5 * self.base * self.height
def get_perimeter(self):
return self.base + 2 * (self.height ** 2 + self.base ** 2) ** 0.5

在上面的代碼中,我們定義了一個抽象類Shape和兩個子類Rectangle和Triangle。Shape類的get_area和get_perimeter方法都被聲明為抽象方法,所以這個類不能被實例化。

通過使用抽象類,我們可以定義一個通用的類,將一些通用方法定義為抽象方法,由子類進行實現。在上面的例子中,Rectangle和Triangle類都可以使用Shape類中定義的方法,這樣我們可以減少代碼重復。