看到别人的代码....有些疑问
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,但是把这句注释了程序又有错误
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,但是把这句注释了程序又有错误
定义的对象=server这个变量是局部变量 public void makeMessageServer(int port, MessageServer server)throws IOException 定义的对象。
所以必须传入一个server进来而 makeMessageServer 是一个 public 方法,所以他无法肯定传入的server肯定就是类里面的那个server, 所以他也只好再
this.server = server 了!这是设计问题。