求高手点拨一个“Java的代码调试思路”.
高手,您好:
我是一名学习软件工程的学生,现在,我在做我的第一个作品:
“一个自己设计的CS结构聊天系统”:
已经写了近3W行代码了...
我是自己设计的这个作品:
C端0:优秀教师客户端.
C端0:学生客户端.
S端:学校运营商服务端.
D端:开发者运营商服务器.
首先D端运行,S端运行,连接D端.
然后C端运行,连接S端,进行账户验证,再连接D端,进行“授权期限”的检查....
如果C端通过了S端的“有这个人”的验证后,再通过D端的“授权期内”的验证后,就可以得到“整个系统功能的使用”了.....
现在,我运行了D端,S端后,点击了这个按钮:

出现了弟我的MyEclipse中出现的界面...:

因为是“第一个完整的Java作品”,弟我在调试运行时错误的技术上,还不是很有经验...
求高手指导:
这个错误页面,应该以什么思路,什么修改流程,什么修改步骤,来进行上面的错误的排查...
并且,如果弟我希望能够在CS结构聊天系统的运行时错误的排查能力之上,快速拥有调试的熟练能力的话...
弟我应该看什么资料,学习什么资源,什么教材,能够“快速拥有这个能力”...
希望高手能够解决弟我的(图二)中的问题....
谢谢高手的过目!!
一百分奉上!!
一位日日夜夜向着理想奔跑的筑梦者
2013年9月12日星期四下午18点55分 调试 java myeclipse 聊天 学习经验
[解决办法]
这个很明显嘛,空指针异常。Recv.java 33行。楼主可以在这行抓个断点
[解决办法]
光看着两个图片可不知道原因。3W行的代码要是结构和注释不好估计别人帮你很困难。
[解决办法]
ExceptionInInitializerError MyJButton2 59行
估计是静态变量初始化顺序错误,代码贴出来看看
[解决办法]
运行程序的时候不要点 run , 点 debug, 然后单步跟踪。
[解决办法]
会不会跟so2,so3初始化顺序和赋值顺序不一致有关系?
[解决办法]
在你调用so2 = new Socket(Recv.D_PORT_SERVER, 8888);时
D_PORT_SERVER还没完成初始化
[解决办法]
真够乱的,new int(100) 都有