一个类中的私有成员变量,这个类中的方法就不能直接访问么?

我想飞走 2012-04-13 04:54:12

class Client implements Runnable {
private Socket s;
private DataInputStream dis = null;
private DataOutputStream dos = null;
private boolean bConnected = false;

public Client(Socket s) {
this.s = s;
try {
dis = new DataInputStream(s.getInputStream());
dos = new DataOutputStream(s.getOutputStream());
bConnected = true;
} catch (IOException e) {
e.printStackTrace();
}
}

public void send(String str) {
try {
dos.writeUTF(str);
} catch (IOException e) {
e.printStackTrace();
}
}

public void run() { .....}
}





因为Socket s 是私有的,那么 dos 使用 就不能直接使用 s.getInputStream() ,那么,为什么要构造一个send方法,作为
dos 的 写出方法呢?

为什么不能直接使用dos.writrUTF();
...全文
400 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
aikaibo 2012-04-14
  • 打赏
  • 举报
回复
调用send方法是传送DatagramPakcet对象 而另一端则调用receive方法接收datagramPacket对象
从而实现双向的数据传输!!
想喝咖啡的貓 2012-04-13
  • 打赏
  • 举报
回复
你在问啥,我怎么没明白?
我想飞走 2012-04-13
  • 打赏
  • 举报
回复
貌似没回答清楚,有知道的吗?
devin_jia 2012-04-13
  • 打赏
  • 举报
回复
一个类中的方法,不能访问自己类中的私有变量么
在外面不行
自己当然可以
我想飞走 2012-04-13
  • 打赏
  • 举报
回复
为什么呢?

一个类中的方法,不能访问自己类中的私有变量么?
devin_jia 2012-04-13
  • 打赏
  • 举报
回复
调里面的方法
devin_jia 2012-04-13
  • 打赏
  • 举报
回复
Socket dd =??
Client c = new Client(dd);
c.send("s");
c.run();
点里面的方法

62,614

社区成员

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

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