Я должен согласиться с тем, что выше. Используйте «окончательный» вместо «абстрактный». Помните, что такие слова, как «конечный» и «абстрактный», являются не только средством общения с вашими коллегами-программистами, но и инструкциями для компьютера. Абстрактное подразумевает, что потом будут классы-потомки, тогда как окончательное окончательно означает, что вы, кроме рефакторинга, не увидите ничего, что происходит от этого класса (что и подразумевается).
Кроме того, в большинстве стандартов, которые я видел, и последовательно в моей компании считается наилучшей практикой делать абстрактный класс чем-то, что конкретно оставлено неиспользованным, за исключением родительских для других классов. «Абстрактный» трактуется как «проект» или «общая структура», вы никогда не будете водить «абстрактный» автомобиль. С другой стороны, конечные классы создаются постоянно, особенно с использованием шаблонов Factory.