-
Notifications
You must be signed in to change notification settings - Fork 1
Description
If the user selects method C.m, where C is a subtype of D, Quick Assist should propose the action "Declare 'm()' in super type 'D' as abstract". This action will add an abstract declaration of method C.m() to the supertype D and mark D as abstract if needed. This action is useful for doing Pull Up and Push Down refactorings. The wizard-based interfaces of Push Down and Pull Up provide configuration options that behave similar to this action.
This action differs from the existing action of Eclipse, namely "Create 'm()' in super type 'D'" in that it creates an abstract method rather than a method with an empty body.
Note that marking the supertype as abstract may lead to compilation problems because others might create instances of the selected supertype. Such compilation problems, won't stop the action from marking the class as abstract. The programmer can easily undo the action or change the code such that no one tries to create instances of the abstract supertype.