Technically both self and this are used for the same thing that is they both are used to obtain the variable connected with the current object. The only difference between them is, you have to incorporate self explicitly as the first parameter to a method in Python, whereas in Java you do not have to worry about pass the 'this' explicitly.