ServerSocket,Socket与引入包的迷惑,百思不得其解

首先,我在做一个项目时候发现的,不知道什么原因:内容如下客户端中包:

com.qq.client.tools

package com.qq.client.tools;
import java.io.ObjectOutputStream;
import java.net.Socket;
import com.qq.client.user.user;
public class testClient {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  try{
  
   Socket s=new Socket("127.0.0.1",1586);
   ObjectOutputStream oos=new ObjectOutputStream(s.getOutputStream());
   user u=new user();
   u.setId(100000);
  
   oos.writeObject(u);
     
  }catch(Exception e)
  {
   e.printStackTrace();
  }
  
 }

}
com.qq.client.user:

package com.qq.client.user;

public class user implements java.io.Serializable {
private int id;

public int getId() {
 return id;
}
public void setId(int id) {
 this.id = id;
}

}
服务器包

com.qq.server.tools:

package com.qq.server.tools;
import com.qq.server.user.user;
import java.io.ObjectInputStream;
import java.net.*;
public class TestServer {
 public static void main(String[] args) {
  // TODO Auto-generated method stub
try{
 System.out.println("服务器正在监听..........");
 ServerSocket ss=new ServerSocket(1586);
 Socket s=ss.accept();
 ObjectInputStream ois=new ObjectInputStream(s.getInputStream());
 user u=(user)ois.readObject();
 System.out.println(u.getId());
 
}catch(Exception e){
 
 e.printStackTrace();
}
 }

}
com.qq.server.user:

package com.qq.server.user;

public class user implements java.io.Serializable {
private int id;

public int getId() {
 return id;
}
public void setId(int id) {
 this.id = id;
}

}
这样去调试一直会出现一个错误,不知道什么原因:

java.lang.ClassNotFoundException: com.qq.client.user.user老是出现这个异常;

这个问题折腾了我n个小时;

后来我把上面的包名该了哈!问题就消失了,不知道什么原因

也就是包名改短了:com.qq.client.tools该成com.tools其他相应的该了

这种样我尝试了多次;问题就解决,真的很疑惑!~~!






 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值