[quote]any good link to tuts and examples?
[/quote]
The basic concept of a particle system is pretty easy. Let’s say we have two arrays like this:
int[] x = new int[1000];
int[] y = new int[1000];
There you go! Everything you need for a particle system.
…
What do you mean you don’t get it? Oh fine. ;D 
A “particle” consists of either a pixel or a sprite on the screen. This “particle” lives until it either expires (assuming you put a lifetime on them) or is needed for recycling. So you could shoot your next particle like this:
int particle = 0;
...
while(true)
{
x[particle] = savedMouseX;
y[particle] = savedMouseY;
repaint();
particle = (particle+1)%x.length; //wraps back to the beginning
}
Assuming that you have a mouse motion listener and save the mouse X and Y coords, the above will plot “particles” where the mouse is. Of course, dots appearing and disappearing is pretty dull. So you need to add physics! I’m not going to go into to much detail (especially since it is really easy to figure out by playing), but the simplest form is to simply make the particles fall. i.e.:
int particle = 0;
...
while(true)
{
x[particle] = savedMouseX;
y[particle] = savedMouseY;
repaint();
for(int i=0; i<y.length; i++) y[i]++;
particle = (particle+1)%x.length; //wraps back to the beginning
}
I’ll leave it to you to come up with the drawing code and more interesting effects. Good luck! 