You need to read a tutorial on Exception handling such as the Sun tutorial
1. I read that those declaration don't solve the exception handling BUT only remember to to coder that will use them that he has to manage the exceptions. Right this?
Sort of. Declaring a method throws an exception is a way of passing the responsibility of handling the exception to the calling method - of course the calling method could also just throw it to it's calling method and so on. If a thrown exception propagates all the way up the call stack and no one has handled it, a stack trace is dumped to the console.

Remember that there is a class of exceptions called unchecked exceptions such as NullPointerException that a method does not need to declare it throws, but it may still throw them.

so I suppose I have to addtry/catch inside each method: they are five: do I need repeat 5 try/catch in each methods either I can put just one out of them? and Where?
You only add try catch statements to methods that can usefully handle the particular exception. If the code can't do something sensible in response to the exception then it should throw it, if it does handle it then the calling method can't handle it as well unless the exception handler re-throws the exception.

It may also be the case that a method catches some but not all of the exceptions thrown to it - this is perfectly ok. In this type of situation your method declares it throws the remaining exceptions and it up to the calling method to handle them.

Sometimes the handling mechanism is the same for a number of different exceptions in which case, if they have a common super class, you can just catch the super class. But be careful doing this as you may inadvertently catch exceptions you didn't intend to.

Also the order of your catch statements is important, if your first catch statement is for a common super class followed by catch statements for sub classes then the sub class catch statements will never be called.