4.7 面向对象实践依赖反转