Como criar uma classe para confirmar fechamento de uma aplicação em Java

import javax.swing.JOptionPane;
import static javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE;

/**
*

  • @author Usuário
    */
    public class fecharApp {
    public void fecharApp(){
    int sair = JOptionPane.showConfirmDialog(null, “Tem certeza que deseja sair?”, “Atenção”, JOptionPane.YES_NO_OPTION, 3);
    if (sair == JOptionPane.YES_OPTION) {
    System.exit(0);
    } else {
    setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
    }
    }
    }

meu setDefaultCloseOperation da erro como faço pra corrigir?

Mas você precisa de fato executar esse comando?

Eu entendo que se eu selecionar a opção “Não", a aplicação não precisa fazer mais nada, logo, não vejo sentido em ter este else no seu código.

sim, vc esta correto, mas quando o usuário clicar no X da janela eu preciso bloquear o fechamento, gostaria de fazer isso através da classe

Entendi, mas no caso você quer somente fechar uma única janela ou a aplicação toda?

aplicação toda

Seta essa configuração que tu fez na sua lógica, antes de carregar o jFrame de forma visível ao usuário (setVisible(true)), geralmente dentro do construtor mesmo.

Se estiver utilizando o NetBeans tu pode fazer a config pela IDE e ela vai ficar dentro do initComponents().

E poderia remover o else da sua condicional.

Isso em teoria já resolveria, o problema eu acredito que está relacionado quando você tenta modificar o comportamento partindo de uma classe que não é seu jFrame.

resolveu sim obrigado