"the final variables which r defined at the time of declaration " are the compile time constant expression.for example- class abc{ final int i=3; } in this compiler gets the value of variable i at the time of compilation which is constant so that compiler can use the compile time constant value(i=3) in other expressions for calculations at compile time.