All direct flights have a non-stop in them; not all non-stop flights are necessarily a sub-set of a direct flight (e.g., terminating service at an out station).
Bottom line is that a non-stop flight has no [scheduled] stops enroute. Direct and connecting flights do.
My favorite is a direct flight when the first leg is delayed and the remainder of the flight takes off before you get there (e.g., UA 875: SEA-NRT-BKK. SEA-NRT is delayed. You arrive in NRT figuring the flight can't leave for Bangkok until you get there. Ha, ha, ha, ha. Laughs on you--it's on it's way to BKK.). So much for the same flight number...