
Originariamente inviata da
andbin
Mah .. io qui vedo il codice ripetuto due volte.

Verifica cosa hai scritto e magari riposta quello che intendevi.
L'ereditarietà serve per definire una relazione di generalizzazione/specializzazione tra due classi. Questa relazione è anche detta con l'espressione "
è un" (in inglese "IS-A"). La superclasse è un caso più generale, la sottoclasse è un caso più specifico.
Una classe Gatto può estendere una classe Animale, perché un gatto è un caso più specifico di un animale. Una classe Sfera può estendere la classe Solido (una sfera
è un solido). Una classe StudenteUniversitario può estendere la classe Studente che può estendere la classe Persona.
Se non puoi esprimere in modo sensato questa relazione .... l'ereditarietà
non ti serve.

Ah, e inoltre, ovviamente non va usata solo perché magari "fa comodo" rendere disponibili dei metodi o campi ad un'altra classe.
Ok capito.
comunque ho sbagliato ad incollare il codice.
le classi sono queste
codice:
public class ApriFile {
public static void ApriFiles(File directory) throws FileNotFoundException, IOException {
FileReader f = new FileReader(directory + "\\Gennaio.txt");
BufferedReader b = new BufferedReader(f);
ArrayList<String> gennaio = new ArrayList<>();
String s = b.readLine();
while (s != null) {
gennaio.add(s);
s = b.readLine();
}
for (String i : gennaio) {
System.out.println(i);
}
}
}
e questa
codice:
public class RicercaFile {
private static boolean foundFolder = false;
public static void findDirectory(File parentDirectory, String e) throws IOException {
if(foundFolder){
return;
}
File[] files = parentDirectory.listFiles();
for (File file : files) {
if (file.isFile()) {
continue;
}
if (file.getName().equals(e)) {
foundFolder = true;
System.out.println(file);
ApriFile.ApriFiles(file);
} else {
}
if (file.isDirectory()) {
findDirectory(file, e);
}
}
}
}