Can in set of possible final states reachable from initial state in nfa can consist of accepted state if input string is not a part of our given language? Here is the example, I want to discuss about-
Design a nfa for a language that accepts all strings over $\{a. b\}$ in which second last symbol is always '$a$'. One possible answer I know is here.(please scroll down to see the nfa)
Here can't we just get rid of $q2$ and have self loop on $q1$ with inputs $a,b$?(Edit-here I am taking $q1$ as accepted state.)
No you can't do that. If you do that, then the language of the NFA will contain the strings such as $a, ba, bba, \cdots$ which does not meet the criteria. In general, when you construct an automata that accepts a set of strings then the automata should accept those and only those set of strings, no more no less.