They are variables that exist within the current scope. You use them to give your method or constructor material to work with.
For example I have a method that draws a line, let's call it drawLine() (this is in Java, in C# it'd be DrawLine()). I could give it 4 parameters: the coordinate of the starting point, the coordinate of the starting point, the coordinate of the ending point and the coordinate of the ending point.
It would look like this: drawLine(xStart, yStart, xEnd, yEnd);
With these parameters your method knows where to put the line exactly. You can let the user choose the parameters or give the values yourself. The point is that the method will become more useful if you give it parameters (of course some methods like toString() don't need parameters since, in the toString case, they take information out of the class itself).
I can be more specific but it's a pretty broad question...