Tablica nie wyświetla obiektów.

0

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);
}
1

Cud, że cokolwiek się wyświetla. Zamieszczony kod nie zawiera żadnej instrukcji wyświetlającej.

0

A gdzie kod wyświetlający?

0

Właśnie dodałem go na początek tematu.

0

Jeszcze nie wiemy co zawiera

interfaces
0

Już dodałem kod interfejsu.

0

pewnie do pętli nie wchodzi,
albo nie zaimplementowałeś tej metody w drugiej klasie?

0

Chodziło mi o to, że w metodzie wyświetlającej używasz jakiegoś pola-tablicy o nazwie "interfaces". Nie wiadomo co ona zawiera lub jak jest wypełniana.

0

Kod interfejsu jest mało przydatny. Jak tworzysz pole interfaces?

0

Sorki, zapomniałem tego wstawić.** interfaces** to tablica przechowująca interfejsy routera. Ma taką samą wielkość jak tablica connctedWith.

private String [] interfaces = {"fa0/0", "fa0/1", "fa0/2"};

1 użytkowników online, w tym zalogowanych: 0, gości: 1