类不调用构造函数?最给力错误

flowerjack 2010-12-23 04:21:33

public class Client extends JFrame implements Runnable,ActionListener
{
public void Client()
{
//画出界面

this.start();
}
public void start(){

//建立套接字
}

public static void main(String args[]) {
Client a=new Client();
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
/// new Client().setVisible(true);
Client User=new Client();
/// User.setVisible(true);
}
});
}


程序就是不去调用构造函数,试过重新生成,也试过重新写到另一个类里面,都没有效果。
程序运行到主函数,就直接完事,没有去运行任何其他的代码

还是第一次遇到这么奇怪的错误,望哪位大哥大姐来解迷一下
...全文
917 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
flowerjack 2010-12-23
  • 打赏
  • 举报
回复
噢,我已经自己解决了:看到第三行代码public void Client()没?
这个是构造函数,因为多了一个void,系统就不把它当作构造函数了。

问题解决,散分

ps: 之前这个是一个Applet来的,后来想改成一个JFrame,
所以把Applet的初始化方法public void init()改了;当时只把init改为类名Client,没删去那一个void,所以出现了上面的问题;好低级的错误


谢谢楼上的热心人
Sunkien 2010-12-23
  • 打赏
  • 举报
回复
看不出什么问题,楼主实现了Runnable接口, 是不是run方法里面有判断直接就给跳出来了,建议按步调试一下
flowerjack 2010-12-23
  • 打赏
  • 举报
回复
个人怀疑是主函数有问题,但怎么找也看不出问题来
主函数的几种写法都试过了都不行
flowerjack 2010-12-23
  • 打赏
  • 举报
回复
再发一个缩减版的代码


public class Client extends JFrame implements Runnable,ActionListener
{


public void Client()
{

//画出界面

this.setVisible(true);
this.start();

}
public void start(){

//建立套接字
}

//个人怀疑是主函数有问题,但怎么找也看不出问题来
//主函数的几种写法都试过了都不行
public static void main(String args[]) {
Client a=new Client();
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
/// new Client().setVisible(true);
Client User=new Client();
/// User.setVisible(true);
}
});
}

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧