Thanks Ulf Dittmer for your reply ,
#1: yes, jar or zip files would be possible. They'd complicate the I/O code, but not a whole lot, and would be functionally equivalent.
I would like to draw your attention that my requirements will be : each plugin will be as .jar file (each jar file contains of multiple classes) so we will have multiple .jar files each jar file represents a plugin.
In a summary :
1. I want to create core application which contains of plugins ( each plugin as .jar file)
2. Each jar file might contains multiple classes
3. Adding/removing plugins is nothing but adding/deleting .jar file to/from a particular location.
So is it possible to modify your example according to my requirements ?
I do appreciate your advise , suggestion and feedback ?