What about wrapper classes? I can write wrappers to classes and abstract the actual implementation of the method from the user. Isnt this abstraction without using the keyword then? Even in case of
patterns, factory pattern, abstract factory pattern etc, user does not know the actual implementation.