Memory usage is irrelevant here. The difference will be around 20 bytes, that will be garbage collected.
What matters is correct design. An object's constructor is not meant to have side effects like showing a dialog box. The goal of a constructor is to create an object with a specific state, by initializing its fields, in order to use the object later.
Your example doesn't do anything like that. You would be creating a MyDialog instance, and do nothing with it. All the constructor would do is to have a huge side-effect: displaying a dialog box.
Another bad point in this design is that you're using an instance field to store a value that is in fact a constant, not tied to any specifu MyDialog instance, and only relevant to the constructor. There is no reason at all to have such a field.
And finally, your method doesn't respect the Java naming conventions: methods start with a lower-case letter. And it should be named showDialog()
instead of makeDialog
, since it doesn't create a dialog box, but shows one.