It might have been prompt, but I'm not sure it was 100% correct!
you can use any class from the java.io package, without importing, e.g. java.io.BufferedReader
No you can't. Only java.lang is implicitly imported. You have to import anything in java.io.
Import is needed when you refer explicitly to a particular class, and do not explicitly specify its package when you refer to it. When you refer to a field or method, you do not have to import the class which is the type of the field or the return type of the method.
Finally, a lot of people think importing using wildcard (e.g. import java.io.*) is a bad idea. The reason is that such imports can end up being ambiguous, if more than one imported package has a class of the same name. It is also nice to have an explicit list of dependencies of the class.