I am faced with the following situation:
My GUI needs a Panel with some special methods (Adding a message to display, adding an image...).
Easy so far. Now, this element is supposed to be exchangeable from the outside!
One version has a pink background, one has a purple one, one is upside down, to name some random examples.
My basic idea was to define an abstract class extending JPanel, with the required methods defined as abstract methods as well.
The question that now keeps me stuck is: where do the implementations belong? I cannot have a jar implement an abstract class from the main apllication, and then have the application use that jar. That idea alone sounds totally broken!
So, how do I solve this properly? I feel like I am missing something obvious here...
EDIT: Plugin is the word I was missing! Marked this as duplicate, the linked answer tells me exactly what I was lookign for :)