Assume that I have the following Java source, where # indicates the cursor position:
/**
* Does stuff.
*
* <p>Hello
*
* @see FooBar
*/
private void lol() {}
#
So I press C-{ and this is what happens:
/**
* Does stuff.
*
* <p>Hello
*
#* @see FooBar
*/
private void lol() {}
And then I press it again:
/**
* Does stuff.
*
#* <p>Hello
*
* @see FooBar
*/
private void lol() {}
And here's what I expected to happen:
#
/**
* Does stuff.
*
* <p>Hello
*
* @see FooBar
*/
private void lol() {}
C-{ and C-} should cycle between blank lines. But the reason why this doesn't happen in java-mode, is because Java redefines the definition of a paragraph. It sets the paragraph-start variable (among other variables) so that when I M-q to fill-paragraph, it'll work correctly *within* the Javadoc, rather than reflowing my code into a jumbled mess.