2.3.2 依赖抽象而非细节