Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Java Java Data Structures Efficiency! Design the UI

Why does it throw an exception?

In the video, Craig say, String choice = mReader.readLine(); throws an exception, "IOException". My question is why does it throw an IOException?

1 Answer

Tonnie Fanadez
.a{fill-rule:evenodd;}techdegree seal-36
Tonnie Fanadez
UX Design Techdegree Graduate 22,793 Points

Hello there.

A file system read can fail for many reasons at any time e.g. the file is deleted or network errors or other OS errors.

An exception is thrown because you can't know or predict what will happen with code in case of the problems noted above. Therefore the programmer should think ahead and take care of any occurrences by catching the exceptions on try-catch block.