Witam. Mam problem z wyświetleniem obiektów tablicy. Posiadam 2 klasy, które zawierają tablicę obiektów typu IDevices oraz obiekty, które używają tego interfejsu. Jeden obiekt wrzucam do jednej tablicy, drugi do drugiej. Niestety po wyświetleniu widać obiekt tylko z jednej z tablic. Nie wiem w czym jest problem. Mój kod:
public class ROpole implements IDevices {
private static ROpole rOpole = ROpole.getROpoleInstance();
private static RGdańsk rGdańsk = RGdańsk.getRGdańskInstance();
private IDevices [] connectedWith = {rGdańsk, null};
...
public static ROpole getROpoleInstance() {
if(rOpole == null)
rOpole = new ROpole();
return rOpole;
}
...
}
public class RGdańsk implements IDevices {
private static ROpole rOpole = ROpole.getROpoleInstance();
private static RGdańsk rGdańsk = RGdańsk.getRGdańskInstance();
private IDevices [] connectedWith = {rOpole, null, null};
...
public static RGdańsk getRGdańskInstance() {
if(rGdańsk == null)
rGdańsk = new RGdańsk();
return rGdańsk;
}
...
}
Funkcja odpowiedzialna za wyświetlanie obiektów:
public String getInfoAboutDevice() {
String informationsAboutDevice = "";
informationsAboutDevice += "Connected with: ";
for(int count = 0; count < interfaces.length; count++) {
if(count == interfaces.length - 1) informationsAboutDevice += connectedWith[count] + ".";
else informationsAboutDevice += connectedWith[count] + ", ";
}
return informationsAboutDevice;
}
Interfejs IDevices:
public interface IDevices {
public void setMode(IModes mode);
public IModes getMode();
public void setPrompt(String prompt);
public String getPrompt();
public void setHostname(String hostname);
public String getHostname();
public void setDevice(IDevices device);
public IDevices getDevice();
public String getInfoAboutDevice();
public void getInterfaces();
public void setIpAddress(String ipAddress, int numberOfInterface);
public void setIpMask(String ipMask, int numberOfInterface);
public void openInterface(int numberOfInterface);
public String getStatus(int numberOfInterface);
public IDevices getConnectedWith(int numberOfInterface);
public void setProtocol(int numberOfInterface);
public int getNumberOfInterfaces();
public String getIpAddress(int count);
}