Review (cont.)
Use Buffered classes for input-output efficiency.
Use Stream classes when access to binary data is required.
Use DataInputStream and DataOutputStream when access to primitive data is required
StringTokenizer is useful for breaking up textual input.