What are IO Streams in JAVA?

IO streams are usually binary output or input of a file. It is particularly useful to store information in small files. It also allows Serializable objects to be written on the files. But it is usually not a good choice to store Strings or numbers in a stream since it is hard to read from a stream and convert back to the original data type.