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 implementations
default only
How many can a class have?
many
Forces a contract
✓
recommendation log
Reset
▸
Flip a requirement above and the recommended column lights up.