Hallo, ich bin gerade dabei eine Netzwerksimulation zu schreiben und habe hierfür mit packages gearbeitet.
Nun habe ich in meinem Ordner Simulation folgende Sturktur:
model/
util/
control/
Nun habe ich in dem Ordner control die Klasse SimpleNode, welche von der Klasse Node aus dem Verzeichnis model erben soll.
model/Node.java
control/SimpleNode.java
Wenn ich nun SimpleNode.java compilen möchte bekomme ich folgende fehlermeldung:
Vermutlich habe ich irgend einen ganz dummen fehler gemacht, aber ich weiß egarde selber leider nciht mehr weiter. Nach meinem Verständnis müsste das
doch funktionieren.
Hier die quelltexte der beiden dateien
LG
Ogofo
Nun habe ich in meinem Ordner Simulation folgende Sturktur:
model/
util/
control/
Nun habe ich in dem Ordner control die Klasse SimpleNode, welche von der Klasse Node aus dem Verzeichnis model erben soll.
model/Node.java
control/SimpleNode.java
Wenn ich nun SimpleNode.java compilen möchte bekomme ich folgende fehlermeldung:
Code:
anonymous@anonymous:~/Javauebungen/Uebung7/control$ javac SimpleNode.java
SimpleNode.java:3: error: package model does not exist
import model.*;
^
SimpleNode.java:5: error: cannot find symbol
class SimpleNode extends Node
^
symbol: class Node
SimpleNode.java:7: error: cannot find symbol
SimpleNode(Link in, Link out1, Link out2)
^
symbol: class Link
location: class SimpleNode
SimpleNode.java:7: error: cannot find symbol
SimpleNode(Link in, Link out1, Link out2)
^
symbol: class Link
location: class SimpleNode
SimpleNode.java:7: error: cannot find symbol
SimpleNode(Link in, Link out1, Link out2)
^
symbol: class Link
location: class SimpleNode
SimpleNode.java:10: error: cannot find symbol
this.in = in;
^
symbol: variable in
SimpleNode.java:11: error: cannot find symbol
this.out1 = out1;
^
symbol: variable out1
SimpleNode.java:12: error: cannot find symbol
this.out2 = out2;
^
symbol: variable out2
SimpleNode.java:17: error: cannot find symbol
receiveData();
^
symbol: method receiveData()
location: class SimpleNode
SimpleNode.java:18: error: cannot find symbol
sendData();
^
symbol: method sendData()
location: class SimpleNode
10 errors
Vermutlich habe ich irgend einen ganz dummen fehler gemacht, aber ich weiß egarde selber leider nciht mehr weiter. Nach meinem Verständnis müsste das
Code:
import model.*;
Hier die quelltexte der beiden dateien
Java:
package control;
import model.*;
class SimpleNode extends Node
{
SimpleNode(Link in, Link out1, Link out2)
{
super();
this.in = in;
this.out1 = out1;
this.out2 = out2;
}
public void nextTick()
{
receiveData();
sendData();
}
}
Java:
package model;
/**
* Die Abstrakte Klasse Node simuliert einen Verbindungspunkt in einem
* Broadcast-Netzwerk.
*
*/
public abstract class Node
{
protected Link in;
protected Link out1;
protected Link out2;
protected DataPacket data;
public static int staticID = 0;
protected int id;
public Node()
{
this.id = staticID;
staticID++;
}
/**
* Setzt die notwendigen Aktionen zum Senden und Empfangen von Daten über das Netzwerk um.
*/
public abstract void nextTick();
/**
* Empfängt Daten vom Eingang. Falls Daten im Eingang vorhanden sind wird
* diesen die Id des Nodes hinzugefügt.
*/
public void receiveData()
{
data = in.getPacket();
if (data != null)
{
data.addNodeToHistory(this);
}
}
/**
* Sendet auf jeden Ausgang eine Kopie der Daten.
*/
public void sendData() throws CloneNotSupportedException
{
if (out1 != null && data != null)
{
out1.addPacket(data.clone());
}
if (out2 != null && data != null)
{
out2.addPacket(data.clone());
}
}
public Link getIn()
{
return in;
}
public void setIn(Link in)
{
this.in = in;
}
public Link getOut1()
{
return out1;
}
public void setOut1(Link out1)
{
this.out1 = out1;
}
public Link getOut2()
{
return out2;
}
public void setOut2(Link out2)
{
this.out2 = out2;
}
}
LG
Ogofo