Is this a thing?
I want to throw my own exceptions just to make it easier to handle. They're unexceptional though because it is likely to happen, not an exceptional case. Such as if the user selects a wrong file type from a browser. Yes I could handle it but it would be far easier if I threw an exception especially for sub methods, since I would need to somehow tell the parent method that the sub method failed so do something differently. This I think is easier with throwing exceptions.
So is it okay to throw an exception in normal situations?
I would have to say answers to this question are to some extent opinion-based, but the general consensus seems to be that it's a bad idea to abuse exceptions for regular flow control.
It's a well-documented anti-pattern, and the primary reasons for it to be considered as such are that: