Główną klasą(z main) jest formatka(gui) z której wywoływane są różne funkcje np otwórz(który otwiera dany plik).
Jak "poustawiać" klasy tak żeby można było dodać obsługę jakiegoś formatu bez konieczności zmiany czegokolwiek w już istniejący kodzie?
Przykład: Program otwiera plik txt, chcę żeby otwierał jpg więc dopisuje oddzielną klasę która implementuje otwórz, tak, że ten sam przycisk robi co innego w zależności od formatu, ale ja nie muszę w klasie głównej dopisywać warunku sprawdzającego format.
Jak na razie mam tyle:
public abstract class Core {
protected BufferedReader file;
public abstract void open();
//abstract void save();
}
public class Format1 extends Core {
@Override
public void open() {
throw new UnsupportedOperationException("Not supported yet.");
}
}
public class GUI extends javax.swing.JFrame
Kłopot w tym, że główna klasa nie widzi funkcji Core.open().