Я серьезно сомневаюсь в этом.Это не то, как наследование должно работать в объектно-ориентированном проектировании.
Если в Class1 нет абстрактного метода Class2, он не должен наследоваться от class2.
Представьте себе пользователя, имеющего коллекциюclass2 и вызов .abstractMethod () для каждого в нем.Позже кто-то добавляет к нему экземпляр Class1.
Ни один из этих программистов не сделал ничего плохого, но код все еще не работает.
Подумайте о добавлении еще одного уровня абстрактности, чтобы этот верхний уровеньабстрактный имеет все свойства class1 и class2, и они оба наследуются от него.Затем Class2 добавляет abstractMethod.