Encapsulation is hiding the details of the implementation of an object so that there are no dependancies on the particular implementation. Abstraction represent taking out the behavior from How exactly its implemented, one example of abstraction in Java is interface.
Encapsulation in Java is private methods; clients don't care about it, You can change, amend or even remove that method if that method is not encapsulated and it were public all your clients would have been affected.
I am trying to figure out some more difference hope will it work:
1) First difference between Abstraction and Encapsulation is that, Abstraction is implemented in Java using interface and abstract class while Encapsulation is implemented using private, package-private and protected access modifier.
2) Encapsulation is also called data hiding.
3) Design principles "programming for interface than implementation" is based on abstraction and "encapsulate whatever changes" is based upon Encapsulation.