En el primer codigo la palabra this se refiere al clase Leaf como tal.
Un ejemplo es:
Código:
Leaf leaf = new Leaf();
Leaf leaf2 = leaf.increment();
Estas palabras son solo apuntadores a memoria, entonces tendrias que leaf2 esta apuntando al mismo espacio en memoria que leaf. Con esto te digo que el return this; esta devolviendo leaf.
Si fuera leaf2.increment(); entonces estaria devolviendo leaf2.
En el segundo codigo en la linea return Peeler.peel(this);... this hace referencia al objeto apple. Si prestas atencion la funcion es static Apple peel(Apple apple){ la cual espera como parametro Apple.
Visita este link para mas informacion:
[URL="http://www.forosdelweb.com/f45/duda-principiante-funcion-java-532158/"]http://www.forosdelweb.com/f45/duda-principiante-funcion-java-532158/[/URL]