PyCharm 2025.3 Help

上移成员、下移成员

向上拉取成员 重构允许您将类成员移动到超类。

向上拉取成员 重构可以创建抽象方法。 如果项目使用 Python 2.x 解释器,则只有实例方法可以抽象化。 如果项目使用 Python 3.x,则任何方法都可以抽象化。

请注意,PyCharm 会自动添加抽象方法所需的 import 语句。

向下推送成员 重构通过将类成员移动到子类来帮助清理类层次结构。 随后,这些成员仅会移动到直接子类中。

上移成员

  1. 选择要将其成员上移到超类的类。

  2. 从主菜单或上下文菜单中,调用 重构 | 上移成员。 将显示 上移成员 对话框。

  3. 选择目标对象(超类)。

  4. 成员 部分,选择要移动的成员。

  5. 要以抽象方法的形式移动某个方法,请选中该方法旁边的 设为抽象 列中的复选框。

  6. 点击 重构 ,将所选成员上移到目标位置。

之前

之后

class SuperClass: def super_method(self): pass class SubClassOne(SuperClass): def my_method(self): pass
class SuperClass: def super_method(self): pass def my_method(self): pass class SubClassOne(SuperClass): pass

下移成员

  1. 在编辑器中,打开其成员需要下移的类。

  2. 从主菜单或上下文菜单中,选择 重构 | 下移成员下移成员对话框 会显示要下移的成员列表。

  3. 要下移的成员 区域,选择要移动的成员。 请注意,插入符号处的成员已被选中。

    如果下移某个成员可能导致问题,将用红色高亮提示您。 这意味着如果不处理该情况,重构后会出现错误。 PyCharm 会显示检测到的问题对话框,您可以选择忽略或修复问题。

  4. 预览并应用更改。

之前

之后

class SuperClass: def super_method(self): pass class SubClassOne(SuperClass): def my_method(self): pass class SubClassTwo(SuperClass): def my_method(self): pass
class SuperClass: pass class SubClassOne(SuperClass): def my_method(self): pass def super_method(self): pass class SubClassTwo(SuperClass): def my_method(self): pass def super_method(self): pass
最后修改日期: 2025年 12月 2日