在按钮on_click事件中加上楼上所说的
解决方案 »
- Java初学者 求教 在做一个小游戏时 如何加入音乐?
- 想用JAVA做一个程序,没有头绪
- java中如何将一个字符串写入excel的指定位置
- 小弟想求一个jsp的系统例子!
- Java初学者提问:有前辈能告诉小生一个Java程序的标准框架吗?
- 求一个过滤空字符串和重复字符串的java排序算法,在线等,解决马上结贴!
- 一个简单问题!送分来了!
- 如何做个搜索引擎?
- 请问怎么样在JAVA里调用数据库(比如SQL SERVER)里的存储过程,是用statement类里的方法吗,还是其它的?谢谢!
- getclass返回一个runtime class,请问什么是runtime class?
- 欢迎光临Java自由人(www.javayou.com) 再散200分啊
- 如何使用calendar类提出这个日期变量的一部分值?
我的代码如下,可是按下关闭按钮时,调试信息显示错误,见后文。
Socket socket1;//连接按钮的事件
void jBtncon_actionPerformed(ActionEvent e) {
int port = Integer.parseInt(jTextField3.getText().trim());
try {
Socket socket1 = new Socket(jFormattedTextFieldIP.getText(), port);
}
catch (IOException ex) {
}
}//关闭连接
void jButton3_actionPerformed(ActionEvent e) {
// jBtncon_actionPerformed(ActionEvent e)
//test();
try {
socket1.close();
}
catch (IOException ex) {
} }
调试信息
C:\JBuilder9\jdk1.4\bin\javaw -classpath ";C:\JBuilder9\thirdparty\junit3.8\junit.jar;C:\JBuilder9\lib\unittest.jar;C:\JBuilder9\jdk1.4\demo\jfc\Java2D\Java2Demo.jar;C:\JBuilder9\jdk1.4\demo\plugin\jfc\Java2D\Java2Demo.jar;C:\JBuilder9\jdk1.4\jre\lib\charsets.jar;C:\JBuilder9\jdk1.4\jre\lib\jaws.jar;C:\JBuilder9\jdk1.4\jre\lib\jce.jar;C:\JBuilder9\jdk1.4\jre\lib\jsse.jar;C:\JBuilder9\jdk1.4\jre\lib\rt.jar;C:\JBuilder9\jdk1.4\jre\lib\sunrsasign.jar;C:\JBuilder9\jdk1.4\jre\lib\ext\dnsns.jar;C:\JBuilder9\jdk1.4\jre\lib\ext\ldapsec.jar;C:\JBuilder9\jdk1.4\jre\lib\ext\localedata.jar;C:\JBuilder9\jdk1.4\jre\lib\ext\sunjce_provider.jar;C:\JBuilder9\jdk1.4\jre\lib\im\indicim.jar;C:\JBuilder9\jdk1.4\lib\dt.jar;C:\JBuilder9\jdk1.4\lib\htmlconverter.jar;C:\JBuilder9\jdk1.4\lib\tools.jar"
java.lang.NullPointerException
at frame1.jButton3_actionPerformed(Frame1.java:249)
at .Frame1_jButton3_actionAdapter.actionPerformed(Frame1.java:374)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1764)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1817)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:419)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:257)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
at java.awt.Component.processMouseEvent(Component.java:5134)
at java.awt.Component.processEvent(Component.java:4931)
at java.awt.Container.processEvent(Container.java:1566)
at java.awt.Component.dispatchEventImpl(Component.java:3639)
at java.awt.Container.dispatchEventImpl(Container.java:1623)
at java.awt.Component.dispatchEvent(Component.java:3480)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3450)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3165)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3095)
at java.awt.Container.dispatchEventImpl(Container.java:1609)
at java.awt.Window.dispatchEventImpl(Window.java:1590)
at java.awt.Component.dispatchEvent(Component.java:3480)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:450)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:197)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:99)
你这里是定义了一个局部变量,
可能你还定义了一下成员变量socket1
但是如何在关闭按钮的方法中访问连接按钮方法中定义的局部变量socket1呢?谢谢!
Socket socket1 = new Socket(jFormattedTextFieldIP.getText(), port); socket1 = new Socket(jFormattedTextFieldIP.getText(), port);
}
catch (IOException ex) {
}
try {
//Socket socket1 = new Socket(jFormattedTextFieldIP.getText(), port);变成 socket1 = new Socket(jFormattedTextFieldIP.getText(), port);
}
catch (IOException ex) {
}