Search code examples
javastaticjoptionpane

Alternative to calling a static method via an instance


JOptionPane jop = new JOptionPane( );
jop.showMessageDialog(“This is never done”);

I'm told that this is done in poor taste. I mean it works, but apparently a "pro" would not do it thus as showMessageDialog is static. Is there a better way to write this?


Solution

  • A static method can be invoked without a reference to an instance:

    JOptionPane.showMessageDialog("This is never done");
    

    Actually, these line:

    JOptionPane jop = new JOptionPane();
    jop.showMessageDialog("This is never done");
    

    will be converted at compile time to:

    JOptionPane jop = new JOptionPane();
    JOptionPane.showMessageDialog("This is never done");