I am not a native English speaker. So, I am asking this question to know what it means to use the word ‘abstraction’ when teaching C# or any other OOP languages. Most of the books say ‘classes allow develeopers to create abstractions’. Does the word abstraction here represent an aspect of the problem the developer is trying to solve ? If so, how is it in line with the general meaning of the word ‘abstraction’ in OOPS that basically says expose only what is necessary to the outside world and make everything else an implementation detail ? May be, we can define the word ‘abstraction’ as representing some aspect of the problem with a particular attention on hiding everything but what is essential to talk to the class. Any comments are much appreciated.
Share
In the context of OOP, it would seem this simply refers to what a class is: a representation of an object. It’s abstract in the sense that it only describes the object, without embodying it. The actual instances of the class (objects) then realize the abstraction.
It might be helpful if you could post an actual quote, so that we can gauge its meaning in context.