Jestem w trakcie nauki języka Java i nie mogę znaleźć dobrego wyjaśnienia na implements Closeabletemat implements AutoCloseableinterfejsów i.
Kiedy zaimplementowałem interface Closeable, moje Eclipse IDE utworzyło metodę public void close() throws IOException.
Mogę zamknąć strumień pw.close();bez interfejsu. Ale nie mogę zrozumieć, jak mogę zaimplementować close()metodę za pomocą interfejsu. Jaki jest cel tego interfejsu?
Chciałbym również wiedzieć: jak mogę sprawdzić, czy IOstreamrzeczywiście był zamknięty?
Użyłem podstawowego kodu poniżej
import java.io.*;
public class IOtest implements AutoCloseable {
public static void main(String[] args) throws IOException {
File file = new File("C:\\test.txt");
PrintWriter pw = new PrintWriter(file);
System.out.println("file has been created");
pw.println("file has been created");
}
@Override
public void close() throws IOException {
}