Abstract Class vs Interface — The Critical Distinction - Abstract Classes — Incomplete Contracts and Partial Implementations | OneNoughtOne