That actually makes the purpose a bit clearer, I can see where something like that might come in useful with Polymorphism etc, where you are working with several 'layers' to the data structure, I'll admit, but the way it's being taught at Uni is as though it's for people who want to name Method variables the same as their field variables for that class, which just goes against everything I've ever learned about computer coding.
Edit: Must admit, I can see the usefullness of Java, but I don't see it becoming a favourite with me, I can understand why people avoid the monolithic approach, but Java sometimes takes things from the sublime to the ridiculous. Arraylists annoy me for a start, you have to tell the computer that there is an Arraylist, and then tell it that it is empty. I can understand why it's done, but that whole 2-stage system has caught me out on several occasions with those damn 'Null Pointer' messages.