When studying OOP, mainly java, these two concepts are always linked, but I see no real relationship or similarity between them. Correct my if I'm wrong but:
Abstraction is to identify key parts of an object and ignore everything else, used in interfaces. Encapsulation just describes how data is protected and hided, it affects permissions.
I don't see a real relation between the two, is there one? Also a simple description for each if mine were bad in any way would help.