Ciao,
in realtà è molto semplice: prendiamo il codice che hai postato tu. Richiami il metodo cammina passando la variabile speed come parametro. Questo parametro "viene visto come" velocità all'interno del metodo (P.S. meglio non usare lettere accentate...). Quindi il metodo prende questa "velocità" (parametro formale) e la setta al valore 20. Cosa è successo alla speed originale? Niente: vale ancora 10! Questo perché al metodo non viene passata la "vera" variabile speed, ma solo una sua copia. Quindi tutte le modifiche fatte dal metodo vengono effettivamente eseguite su una copia, e questo lascia inalterato il valore della variabile passata.