Pierwsza sprawa - nie ma nic specjalnego w nazwach "args" czy "params", możesz nazwać to w dowolny sposób, jaki Ci pasuje. Ważne jest, żeby funkcja main przyjmowała parametr typu String[].
Słówko final oznacza, że zmienna, przed którą występuje, nie może zostać zmieniona, w skrócie, nie można przypisać jej innej wartości. W pierwszym przypadku, wewnątrz funkcji main możesz przypisać zmiennej args[] inną wartość (nie mam pojęcia, dlaczego miałbyś to robić), a w drugiej - będzie to niemożliwe.
W skrócie - nie ma sensu pisać tego final, nie potrafię wymyślić racjonalnego powodu, dla którego miałbyś nadpisywać args.