The current can go in either direction in any of those devices (by direction, I mean from drain/collector to source/emitter. JFETs and MOSFETS are *in principle* symmetric so there isn't any difference between drain and source in first-order theory. In that sense you're correct. HOWEVER, in practice they are not symmetric. Manufacturers play a lot of tricks to increase the breakdown voltage, improve performance etc (for example look up lightly-doped drain). For this reason you should use the device based on which terminals are labeled drain and source. The take away is that MOSFETs and JFETs that you buy are not symmetric.
For a BJT, while you can operate the device "backwards" keep in mind that performance will be greatly reduced if you do this. Doing so puts the transistor into what is called the "reverse active region" and has much lower beta than the device does in its intended "forward active region".
Hope this clears it up.