What is the difference between functionality and implementation details in abstraction?

  • A+
Category:Languages

I'm learning about OOP and Java, and the definition of Abstraction is the process of hiding the implementation details from the user, only the functionality will be provided to the user.

Can someone explain me what is the difference between functionality and implementation details?

 


Real world example: Think of a gear box, the user only have the ability to change gears and that is the functionality.

The mechanism behind the gearbox and how the gear box is working internally is the implementation and the implementation is hidden from the user.

Comment

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: