title: What are the different types of encapsulation?
body: <p>What are the different types of encapsulation?</p>
  
  <p>Am I right in thinking this basically refers to central OO concepts such as Abstraction, Polymorphism and Inheritance?</p>
  
  <p>My understanding of encapsulation is that it is a method of hiding data / functionality, but I never really considered Polymorphism or Inheritance a form of encapsulation, although I can see how polymorphism could be considered encapsulation as it can hide the exact type of the object you are interacting with.</p>
  
  <p>So, would you say that's about it, or am I missing some core concepts?</p>
  
  <p><em>edit</em> I just noticed in the comments someone mentioned it could refer to private / public methods, perhaps I'm thinking in to the question too much and expecting a more complicated answer than it really is?</p>