Final means that the link can never change, while the immutability of String means something else, it means that when a string is created (the value is not refrence ie: "text"), it cannot be changed look at this:
String x="Strings Are ";
String s=x;
now s and x both point to the same line:
x+=" Immutable Objects!";
System.out.println("x= "+x);
System.out.println("s= "+s);
This will print:
x= Strings Are Immutable Objects
s= Strings Are
, , - , .
final, x final ,
final String x="Strings Are ";
x+=" Immutable Objects!";
java.lang.RuntimeException: Uncompilable source code - cannot assign a value to final variable x