Chciałbym w projekcie zastosować rozwiązanie, które nie wiem czy zadziała. Koncepcja jest taka:
W mojej aplikacji mam abstrakcyjną klasę Algorytm i obiekty Algorytm są używane do dosyć złożonych obliczeń. Nie wiem jeszcze jaka implementacja algorytmu będzie najlepsza. Dlatego chciałbym klasy dziedziczące po Algorytm ładować dynamicznie z zewnętrznego folderu wtedy - jeśli je tam umieszczę. Aplikację razem z podstawową implementacja algorytmu chcę spakować do jara, a lepsze implementacje algorytmu dopisywać później i ładować dynamicznie. Jednak muszą one dziedziczyć po Algorytm.
I tu moje pytania: jak zapewnić dziedziczenie, tzn. czy będę potrzebował jakiejś biblioteki z definicja klasy Alogytm? I czy po załadowaniu klasa zostanie rozpoznana poprawnie jako dziedzicząca po Algorytm? Czy przy uzyciu classloadera i refleksji będę mógł stworzyć obiekt takiej klasy i posługiwać się nim z zachowaniem pełnej funkcjonalności?
Takie rozwiązanie bardzo by mi odpowiadalo, ale nie wiem czy to jest w Javie. Proszę o poradę.