将参数传递给对象数组

时间:2015-01-26 00:56:42

标签: java arrays oop object

我创建了一个像这样的对象数组:

Handler handlers[] = new Handler[4];

每个处理程序对象都接受一个套接字对象作为参数。如何通过套接字处理程序?我想更一般地说,如何在对象数组中传递参数?

我试过这个:

handlers[1](someSocket);

它(显然?)没有用。

2 个答案:

答案 0 :(得分:3)

Handler handlers[] = new Handler[4];

为4个Handler个实例分配空间,它不会分配任何实际的Handler个。你可以做点什么,

Handler[] handlers = new Handler[4];
for (int i = 0; i < handlers.length; i++) {
  handlers[i] = new Handler();
}

甚至

Handler[] handlers = new Handler[] {
  new Handler(), new Handler(), new Handler(), new Handler()
};

答案 1 :(得分:1)

迭代数组中的每个元素。创建一个新的处理程序,将其传递给套接字,并将其存储在数组中,如下所示:

Handler handlers[] = new Handler[4];
for(int index=0;index<4;index++){
    handlers[index]= new Handler(socket);
}