I think the generated code isn't that different so you should not care about it. Just make it static if you need to and trust the compiler. You can always try it yourself using a mini GWT project and compile it with style Pretty.
Not sure but I would guess its something like:
function MyWidget() {
var myVar = 1; //member variable
}
versus
function MyWidget() {
}
MyWidget.myVar = 1; //"static" variable
Alternative would be to make your widget a singleton.
Just keep in mind that you can't insert the same widget instance in two different panels as each widget can only have one parent widget at any time. So when you add a widget instance a second time into a panel it removes itself from its current parent.
-- J.