Да, вы делаете это правильно, но учтите, что вы не сможете создать экземпляр этого абстрактного класса. Вам потребуется реализовать другой класс, который наследует от абстрактного класса, который вы определили, чтобы использовать эти функции. Преимущество абстрактных классов заключается в том, что вы сможете создавать несколько классов, использующих эти реализации.
Экземпляр, использующий вашу реализацию, будет объявлен следующим образом:
class MyCustomArticle extends AbstractArticle {
// Some other functions and variables
}