帮忙看看这段代码....

yan119760463 2007-12-30 12:34:37
看到别人的代码....有些疑问
public class chessServer extends Frame implements ActionListener
{
//MessageServer是继承于Panel的,实现一些界面
private MessageServer server = new MessageServer();
chessServer()
{
......省略代码
makeMessageServer(4331, server);
}
public void makeMessageServer(int port, MessageServer server)throws IOException
{
......
this.server = server;???这里不明白
server.messageTextArea.setText(..........);
}
}
请问this.server=server;这条语句有什么用??
makeMessageServer()方法头中声明的server形参不是接受第一个server作为实参传递进来的吗??this.server和这个server应该是完全一样的,为什么还要这么一句,我觉得好象是自己又给自己赋值一遍....
而且makeMessageServer()下面的代码没用到this.server,但是把这句注释了程序又有错误
...全文
168 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
likgui 2007-12-30
  • 打赏
  • 举报
回复
this.server这个变量是全局变量是private MessageServer server = new MessageServer();
定义的对象

=server这个变量是局部变量 public void makeMessageServer(int port, MessageServer server)throws IOException 定义的对象。
liulei007 2007-12-30
  • 打赏
  • 举报
回复
this.server = server;//只是宣称这个"server"是 从private MessageServer server = new MessageServer(); 里复制来得,其实是连接两个server和指向一个server语句
老紫竹 2007-12-30
  • 打赏
  • 举报
回复
makeMessageServer 需要2个参数, 端口和服务,
所以必须传入一个server进来

而 makeMessageServer 是一个 public 方法,所以他无法肯定传入的server肯定就是类里面的那个server, 所以他也只好再
this.server = server 了!

这是设计问题。
Crazyboy_1987 2007-12-30
  • 打赏
  • 举报
回复
this.server=server是用来显示 private MessageServer server = new MessageServer(); 这条语句中的server的,这条语句中的server是一个全局变量(当然JAVA中没有全局变量这一说,只是起到的作用和全局变量是一样).其实也就是使server对象在public void makeMessageServer(int port, MessageServer server)throws IOException 方法中显示化,避免错误.
yan119760463 2007-12-30
  • 打赏
  • 举报
回复
谢谢各位...我想知道为什么去掉这条语句程序会有错误
胡矣 2007-12-30
  • 打赏
  • 举报
回复
this.server 是该类中定义的 private MessageServer server = new MessageServer();

等号后面的server 是形式参数 public void makeMessageServer(int port, MessageServer server)throws IOException 这里传过来的server

62,614

社区成员

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

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