I think that the text may be "isolating concerns" here, but I would respectfully argue that "some" may be perplexed when they see:What if the recline method were protected or default? It would have been ok in that case because it is possible for a subclass to inherit methods with protected and default access.
$javac Sofa.java
Sofa.java:1: error: Sofa is not abstract and does not override abstract method recline() in Sofa
public class Sofa{
^
1 error