This is a question mostly about Java inheritance. I am developing a program which has 2 windows, both of which will be developed in separate classes which will extend JPanel
Prefer Composition over Inheritance
Include a FileThing in your JPanel subclass, instead of making it a FileThing and a JPanel.
You can do as below
public class Files extends JPanel{
}
public class FileSub1 extends Files{
}
public class FileSub2 extends Files{
}
I don't see why you need multiple inheritance. As far as I can tell you should be fine with a an abstract base class that implements the common methods:
public abstract class AbstractFilePanel extends JPanel
{
public void commonMethod1() {}
}
public class FileSub1 extends AbstractFilePanel
{
public void sub1Method() {}
}
public class FileSub2 extends AbstractFilePanel
{
public void sub2Method() {}
}