What he means is that just because subclassing is available as a technical mechanism, we should only use it for modeling subtyping and not implementation reuse (only in very few cases this is actually useful in the long run).
For reference, this goes under the name of Liskov substitution principle and one nice article that explains it is this one: