with throw you throw Exceptions.
i.e.
throw new NullPointerException();
throw new Exception();
you use throws in a method/constructor declaration to indicate that same may throw an Exception.
like..
public void doWork() throws SomeException
{
//within this method SomeException should be thrown
}
Static members are said to be hidden in a subclass rather than being overidden. Check
here and
herefor an explanation.