BlueJ Mobilnetzsimulation mit 3 Klassen

Neue Frage »

Auf diesen Beitrag antworten »
MysticIII BlueJ Mobilnetzsimulation mit 3 Klassen

Hallo,
ich muss wie im Titel genannt ein Mobilnetz mit BlueJ simulieren. Nun habe ich schon etwas, jedoch kriege ich bei der Klasse "Provider" immer wieder Nullpointer Exceptions. Könnte sich das einer durchgucken?

public class Provider
{
private String name;
private SMS sms;
private Mobiltelefon [] mt;
private int i;

public Provider(String pName)
{
name = pName;
mt = new Mobiltelefon [3];
}
public void weiterleiten(SMS pSms)
{
sms = pSms;
i = 0;
while (i < mt.length)
{
if (mt.getTelefonnummer() == pSms.getEmpfänger())
{
mt.empfangeSMS(pSms);
i = mt.length;
}
i = i+1;
}

}
public void mtAbmelden (Mobiltelefon pMt)
{
i = 0;
while (i < mt.length)
{
if (mt .getTelefonnummer() == pMt.getTelefonnummer())
{
mt = null;
i = mt.length;
}
i = i + 1;
}
}
public boolean bereitsAngemeldet (Mobiltelefon pMt)
{
i = 0;
while (i < mt.length)
{
if (mt.getTelefonnummer() == pMt.getTelefonnummer())
{
return true;
}
else
{
i = i+1;
}

}
return false;
}
public String getName (Provider pProvider)
{
return name;
}
public void mtAnmelden (Mobiltelefon pMt)
{
i = 0;
while (i < mt.length)
{
if (!bereitsAngemeldet(pMt))
{
if (mt == null)
{
mt = pMt;
i = mt.length;
}
i = i + 1;
}
}



}
}


public class SMS
{
private int absender;
private int empfänger;
private String inhalt;
private int telefonnummer;

public SMS(int pAbsender, int pEmpfänger, String pInhalt)
{
absender = pAbsender;
empfänger = pEmpfänger;
inhalt = pInhalt;
}
public int getAbsender()
{
return absender;
}
public String getInhalt()
{
return inhalt;
}
public int getEmpfänger()
{
return empfänger;
}
public int getTelefonnummer()
{
return telefonnummer;
}
}


public class Mobiltelefon
{
private int telefonnummer;
private boolean an;
private String modellnummer;
private int pin;
private Provider provider;
private SMS sms;


public Mobiltelefon(int pTelefonnummer, String pModellnummer, int pPin, Provider pProvider)
{
telefonnummer = pTelefonnummer;
modellnummer = pModellnummer;
pin = pPin;
provider = pProvider;
}
public void einschalten(int pPin)
{
if (pPin == pin)
{
an = true;
}
else
{
an = false;
}
}
public void ausschalten(int pPin)
{
if (an = true)
{
an = false;
}
}
public void schreibeSMS(String pInhalt, int pEmpfänger)
{
if (an == true)
{
sms = new SMS (telefonnummer, pEmpfänger, pInhalt);
provider.weiterleiten(sms);
}
}
public void empfangeSMS(SMS pSms)
{
sms = pSms;
}
public int getTelefonnummer()
{
return telefonnummer;
}
public String getModellnummer()
{
return modellnummer;
}
public void setProvider(Provider pProvider)
{
if (an == true)
{
pProvider = provider;
}
}

}
 
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »