PyCharm 2025.2 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年 9月 26日