高手,您好:
我是一名学习软件工程的学生,现在,我正在做一个CS结构的聊天系统。这是我的第一个Java作品。写了近8K行代码,调试了好几周的时间,现在,编译时错误已经排查完毕。弟我现在已经做出了一个“集成测试”的环境,准备将其中的各个功能类,进行集成.
我的设计思路是:
做出CSD的聊天系统:
D端:开发者端.
S端:运营者端.
C端:整个系统客户端.
在运行程序的时候,首先D端打开,S端连接到D端,然后,C端用户上线,连接到S端和D端进行数据通信.
现在,弟我初步得到了下面的成果:
排查掉了几十个类文件中的编译错误.
并且,现在弟我打开D端后,能够没有运行时错误,S端打开后,连接D端.
早晨弟我在CSDN中的提问,得到了高手的点拨.
让我的“S端连接D端的几个运行时错误”,得到排查,并且,弟我得到了很大的启发.
由于工期紧张,希望能够再次得到CSDN中高手的回复指导:
现在弟我将我的D端的入口类进行了运行后,无运行时错误。弟我将S端的入口类运行后,此时编译器报出的错误为:
这个时候,我的D端的代码如下:
package d_port_package;import java.io.DataInputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;public class D_Updata_c_port_Data {
static int[] Localmemberonline = new int[200];
static String D_PORT_SERVER = "127.0.0.1";
static String S_PORT_SERVER = "127.0.0.1";
static String C_PORT_CLIENT = "127.0.0.1";
DataInputStream dips0 = null;
ServerSocket ss1 = null;
Socket s1 = null;
Socket s2 = null;
byte b = 'b';
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new D_Updata_c_port_Data().startGetValue();
}public void startGetValue(){
try {
ss1 = new ServerSocket(9999,50);
while(true){
s1 = ss1.accept();
int condition = dips0.read();
switch(condition){
case 'a':
{
D_ManageTheChannel11DS m11 = new D_ManageTheChannel11DS(s1,"Thread_11");
m11.start();
D_ManageTheChannel12DS m12 = new D_ManageTheChannel12DS(s2,"Thread_12");
m12.start();
}
case 'b':
{
D_ManageTheChannel21DS m21 = new D_ManageTheChannel21DS(s1,"Thread_21");
m21.start();
D_ManageTheChannel22DS m22 = new D_ManageTheChannel22DS(s2,"Thread_22");
m22.start();
}
case 'F':
{
D_portManageTheSysRegister m3 = new D_portManageTheSysRegister(s1,"Thread_3");
m3.start();
}
case 'M':
{
D_ManageTheChannel31DS m4 = new D_ManageTheChannel31DS(s1,"Thread_4");
m4.start();
}
} }
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} 弟我的S端的代码为:
package s_port_package_BeiJing;import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Arrays;
import java.util.HashMap;import javax.swing.JFrame;public class ChatServer extends JFrame {
/**
* ChatServer.java
* 2013-5-9
* @author cjco
*/
//全局定义区域:定义各种成员变量;
ServerSocket ss1 = null;
public static int Index = 0;
static int num = 0;
int[] a = null;
int condition = -1;
private static final long serialVersionUID = 1L;
boolean started = false;
static Socket so1;
Socket so4;
static int PM_linknumlog = 0;
DataOutputStream dos1 = null;
DataOutputStream dos2 = null;
DataOutputStream dos3 = null;
DataInputStream dis1 = null;
DataInputStream dis2 = null;
DataInputStream dis3 = null;
ObjectOutputStream oops = null;
static int[] Localstaff = new int[200];
static int[] LocalMemberonline = new int[200];
static int[] Membercomplicatingnum = new int[200]; public static S_port_ChatClientMember_DS JB0 = null;
public static S_port_ChatClientMember_DS JB1 = null;
public static S_port_ChatClientMember_DS JB2 = null;
public static S_port_ChatClientMember_DS JB3 = null;
public static S_port_ChatClientMember_DS JB4 = null;
public static S_port_ChatClientMember_DS JB5 = null;
public static S_port_ChatClientMember_DS JB6 = null;
public static S_port_ChatClientMember_DS JB7 = null;
public static S_port_ChatClientMember_DS JB8 = null;
public static S_port_ChatClientMember_DS JB9 = null;
public static S_port_ChatClientMember_DS JB10 = null;
public static S_port_ChatClientMember_DS JB11 = null;
public static S_port_ChatClientMember_DS JB12 = null;
public static S_port_ChatClientMember_DS JB13 = null;
public static S_port_ChatClientMember_DS JB14 = null;
public static S_port_ChatClientMember_DS JB15 = null;
public static S_port_ChatClientMember_DS JB16 = null;
public static S_port_ChatClientMember_DS JB17 = null;
public static S_port_ChatClientMember_DS JB18 = null;
public static S_port_ChatClientMember_DS JB19 = null;
public static S_port_ChatClientMember_DS JB20 = null;
public static HashMap<Byte,S_port_ChatClientcustomer_DS> mapcustomer = new HashMap<Byte,S_port_ChatClientcustomer_DS>(); public static HashMap<Byte,S_port_ChatClientMember_DS> mapMember = new HashMap<Byte,S_port_ChatClientMember_DS>();
public static void main(String[] args) {
new ChatServer().start();
} public static int creatIndex(){
int MemberSystemIndex = ChatServer.Index++;
return MemberSystemIndex;
} //“C端用户的其他Socket请求的"交给线程处理"动作。
public void start(){
try {
final String D_PORT_SERVER = "127.0.0.1";
final String S_PORT_SERVER = "127.0.0.1";
final String C_PORT_CLIENT = "127.0.0.1";
Arrays.fill(LocalMemberonline, 0);
// TODO Auto-generated method stub
File f=new File("D://MyDoc//Chatlog.txt");
Socket s4 = new Socket(D_PORT_SERVER,9999);
ss1 = new ServerSocket(8888,50);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
while(true){
//创建绑定到端口8888的ServerSocket对象
try {
so1 = ss1.accept();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(so1+"|||---");
System.out.println("服务器正在对8888端口进行监听");
//服务器循环接受客户端的请求,为不同的客户端提供服务
InputStream in;
try {
in = so1.getInputStream();
BufferedReader buffReder = new BufferedReader(new InputStreamReader(in));
condition = buffReder.read();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
switch(condition){
case 0:
{
ManageTheChannel0ConfirmandSaveDS m0 = new ManageTheChannel0ConfirmandSaveDS(so1,"Thread0");
m0.start();
break;
}
case 1:
{
ManageTheChannel1SendInfo m1 = new ManageTheChannel1SendInfo(so1,"Thread1");
m1.start();
break;
}
case 2:
{
ManageTheChannel2ExitSysGivOrderNum m2 = new ManageTheChannel2ExitSysGivOrderNum(so1,"Thread2");
m2.start();
break;
}
case 3:
{
}
}
}
}
}
弟我的上面的代码,希望能够得到高手的回答:
怎么排查掉弟我贴出的图中第32行和第24行代码中的运行时错误...?
在线静候高手的点拨!!
一百分奉上!!
一位日日夜夜向着理想奔跑的筑梦者
2013年8月16日晚上11点32分星期五聊天工具Java CS结构聊天系统Java源代码调试Java SE网络编程CS结构聊天程序调错
我是一名学习软件工程的学生,现在,我正在做一个CS结构的聊天系统。这是我的第一个Java作品。写了近8K行代码,调试了好几周的时间,现在,编译时错误已经排查完毕。弟我现在已经做出了一个“集成测试”的环境,准备将其中的各个功能类,进行集成.
我的设计思路是:
做出CSD的聊天系统:
D端:开发者端.
S端:运营者端.
C端:整个系统客户端.
在运行程序的时候,首先D端打开,S端连接到D端,然后,C端用户上线,连接到S端和D端进行数据通信.
现在,弟我初步得到了下面的成果:
排查掉了几十个类文件中的编译错误.
并且,现在弟我打开D端后,能够没有运行时错误,S端打开后,连接D端.
早晨弟我在CSDN中的提问,得到了高手的点拨.
让我的“S端连接D端的几个运行时错误”,得到排查,并且,弟我得到了很大的启发.
由于工期紧张,希望能够再次得到CSDN中高手的回复指导:
现在弟我将我的D端的入口类进行了运行后,无运行时错误。弟我将S端的入口类运行后,此时编译器报出的错误为:
这个时候,我的D端的代码如下:
package d_port_package;import java.io.DataInputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;public class D_Updata_c_port_Data {
static int[] Localmemberonline = new int[200];
static String D_PORT_SERVER = "127.0.0.1";
static String S_PORT_SERVER = "127.0.0.1";
static String C_PORT_CLIENT = "127.0.0.1";
DataInputStream dips0 = null;
ServerSocket ss1 = null;
Socket s1 = null;
Socket s2 = null;
byte b = 'b';
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new D_Updata_c_port_Data().startGetValue();
}public void startGetValue(){
try {
ss1 = new ServerSocket(9999,50);
while(true){
s1 = ss1.accept();
int condition = dips0.read();
switch(condition){
case 'a':
{
D_ManageTheChannel11DS m11 = new D_ManageTheChannel11DS(s1,"Thread_11");
m11.start();
D_ManageTheChannel12DS m12 = new D_ManageTheChannel12DS(s2,"Thread_12");
m12.start();
}
case 'b':
{
D_ManageTheChannel21DS m21 = new D_ManageTheChannel21DS(s1,"Thread_21");
m21.start();
D_ManageTheChannel22DS m22 = new D_ManageTheChannel22DS(s2,"Thread_22");
m22.start();
}
case 'F':
{
D_portManageTheSysRegister m3 = new D_portManageTheSysRegister(s1,"Thread_3");
m3.start();
}
case 'M':
{
D_ManageTheChannel31DS m4 = new D_ManageTheChannel31DS(s1,"Thread_4");
m4.start();
}
} }
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} 弟我的S端的代码为:
package s_port_package_BeiJing;import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Arrays;
import java.util.HashMap;import javax.swing.JFrame;public class ChatServer extends JFrame {
/**
* ChatServer.java
* 2013-5-9
* @author cjco
*/
//全局定义区域:定义各种成员变量;
ServerSocket ss1 = null;
public static int Index = 0;
static int num = 0;
int[] a = null;
int condition = -1;
private static final long serialVersionUID = 1L;
boolean started = false;
static Socket so1;
Socket so4;
static int PM_linknumlog = 0;
DataOutputStream dos1 = null;
DataOutputStream dos2 = null;
DataOutputStream dos3 = null;
DataInputStream dis1 = null;
DataInputStream dis2 = null;
DataInputStream dis3 = null;
ObjectOutputStream oops = null;
static int[] Localstaff = new int[200];
static int[] LocalMemberonline = new int[200];
static int[] Membercomplicatingnum = new int[200]; public static S_port_ChatClientMember_DS JB0 = null;
public static S_port_ChatClientMember_DS JB1 = null;
public static S_port_ChatClientMember_DS JB2 = null;
public static S_port_ChatClientMember_DS JB3 = null;
public static S_port_ChatClientMember_DS JB4 = null;
public static S_port_ChatClientMember_DS JB5 = null;
public static S_port_ChatClientMember_DS JB6 = null;
public static S_port_ChatClientMember_DS JB7 = null;
public static S_port_ChatClientMember_DS JB8 = null;
public static S_port_ChatClientMember_DS JB9 = null;
public static S_port_ChatClientMember_DS JB10 = null;
public static S_port_ChatClientMember_DS JB11 = null;
public static S_port_ChatClientMember_DS JB12 = null;
public static S_port_ChatClientMember_DS JB13 = null;
public static S_port_ChatClientMember_DS JB14 = null;
public static S_port_ChatClientMember_DS JB15 = null;
public static S_port_ChatClientMember_DS JB16 = null;
public static S_port_ChatClientMember_DS JB17 = null;
public static S_port_ChatClientMember_DS JB18 = null;
public static S_port_ChatClientMember_DS JB19 = null;
public static S_port_ChatClientMember_DS JB20 = null;
public static HashMap<Byte,S_port_ChatClientcustomer_DS> mapcustomer = new HashMap<Byte,S_port_ChatClientcustomer_DS>(); public static HashMap<Byte,S_port_ChatClientMember_DS> mapMember = new HashMap<Byte,S_port_ChatClientMember_DS>();
public static void main(String[] args) {
new ChatServer().start();
} public static int creatIndex(){
int MemberSystemIndex = ChatServer.Index++;
return MemberSystemIndex;
} //“C端用户的其他Socket请求的"交给线程处理"动作。
public void start(){
try {
final String D_PORT_SERVER = "127.0.0.1";
final String S_PORT_SERVER = "127.0.0.1";
final String C_PORT_CLIENT = "127.0.0.1";
Arrays.fill(LocalMemberonline, 0);
// TODO Auto-generated method stub
File f=new File("D://MyDoc//Chatlog.txt");
Socket s4 = new Socket(D_PORT_SERVER,9999);
ss1 = new ServerSocket(8888,50);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
while(true){
//创建绑定到端口8888的ServerSocket对象
try {
so1 = ss1.accept();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(so1+"|||---");
System.out.println("服务器正在对8888端口进行监听");
//服务器循环接受客户端的请求,为不同的客户端提供服务
InputStream in;
try {
in = so1.getInputStream();
BufferedReader buffReder = new BufferedReader(new InputStreamReader(in));
condition = buffReder.read();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
switch(condition){
case 0:
{
ManageTheChannel0ConfirmandSaveDS m0 = new ManageTheChannel0ConfirmandSaveDS(so1,"Thread0");
m0.start();
break;
}
case 1:
{
ManageTheChannel1SendInfo m1 = new ManageTheChannel1SendInfo(so1,"Thread1");
m1.start();
break;
}
case 2:
{
ManageTheChannel2ExitSysGivOrderNum m2 = new ManageTheChannel2ExitSysGivOrderNum(so1,"Thread2");
m2.start();
break;
}
case 3:
{
}
}
}
}
}
弟我的上面的代码,希望能够得到高手的回答:
怎么排查掉弟我贴出的图中第32行和第24行代码中的运行时错误...?
在线静候高手的点拨!!
一百分奉上!!
一位日日夜夜向着理想奔跑的筑梦者
2013年8月16日晚上11点32分星期五聊天工具Java CS结构聊天系统Java源代码调试Java SE网络编程CS结构聊天程序调错
socket一时半会也将不清楚
这个是讲socket基础的,里面讲的还是很清楚的。希望对你有帮助哈
地址都忘发了
Socket s4 = new Socket(D_PORT_SERVER,9999);好像没用到过
删掉再试试