7. 抽象
什么是抽象
抽象(Abstraction) 是指隐藏复杂实现细节、仅暴露必要接口的设计思想。
通过抽象,程序员可以定义类的接口,而不必关心这些接口的具体实现。
抽象有助于减少程序的复杂性,提高代码的可维护性和可读性。
实现方法
- Python -- 抽象类
- Java -- 抽象类或接口
- C++ -- 抽象类
抽象类的实现
Python中的抽象通过抽象基类(ABC-Abstract Base Classes)和抽象方法(@abstractmethod)实现,用于定义规范和隐藏实现细节。
说明
抽象(Abstraction) 是一种隐藏复杂实现细节、仅暴露必要接口的设计思想。它允许开发者专注于对象的行为(做什么),而不是具体的实现(怎么做)。
示例
# 此示例示意抽象类的用法
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self): # 面积
pass
@abstractmethod
def perimeter(self): # 周长
pass
class Circle(Shape): # 圆
def __init__(self, radius):
self.radius = radius
def area(self): # 面积
return 3.1415 * self.radius ** 2
def perimeter(self): # 周长
return 2 * 3.1415 * self.radius
class Rectangle(Shape): # 矩形
def __init__(self, w, h):
self.w, self.h = w, h
def area(self): # 面积
return self.w * self.h
def perimeter(self): # 周长
return 2 * self.w + 2 * self.h
s = Shape()
此实例使用了装饰器(
@abstractmethod
),我们高级的内容才会学到装饰器,先用着再说!