如何防止运行Scanner类的多个实例?有关于线程&锁等信息,但我不能让他们在我的应用程序上工作。例如,我点击付款,然后出现一个扫描器实例,然后点击取消创建付款。然后,当我点击付费时,扫描仪的数量就会增加一倍。下面有一个简短的摘要:如何防止类的实例繁殖
@ PlaceOrder.java,我有:
btnPay.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e)
{
java.awt.EventQueue.invokeLater(new Runnable()
{
public void run()
{
PlaceOrder.this.setVisible(false);
new boundary.ScannerUI().setVisible(true);
PlaceOrder.this.dispose();
}
});
} });
@ Scanner.java,我有:
btnCancel.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
//ScannerUI.this.setVisible(false);
//ScannerUI.this.dispose();
new boundary.PlaceOrder().setVisible(false);
ScannerUI.this.dispose();
}
});
http://en.wikipedia.org/wiki/Singleton_pattern? – Evans