Your requirements flip to describe your situation
abstract class Base → use this
Holds instance state / fields
Has a constructor
Concrete method implementations✓ full
How many can a class have?one
Forces a contract
interface Contract → use this
Holds instance state / fields
Has a constructor
Concrete method implementationsdefault only
How many can a class have?many
Forces a contract
recommendation log
Flip a requirement above and the recommended column lights up.