Which of the following statements are true?
A. All methods in FileInputStream/FileOutputStream are inherited from InputStream/OutputStream.
B. You can create a FileInputStream/FileOutputStream from a File object or a file name using FileInputStream/FileOutputStream constructors.
C. The return value -1 from the read() method signifies the end of file.
D. A java.io.FileNotFoundException would occur if you attempt to create a FileInputStream with a nonexistent file.
E. A java.io.FileNotFoundException would occur if you attempt to create a FileOutputStream with a nonexistent file.