Guten Tag Liebes Forum,
Ich nehme gerade an einem Modul in der uni teil, in dem wir an einem Github dokument arbeiten.
Mit der Push und Pull Sache komme ich ganz gut zu rande, jedoch habe ich mit den Packages probleme.
Und zwar bleibt mir der Kompilierer einfach nicht in dem Programm wo ich ihn haben will, sondern geht in andere Files (anderer Packages) und beschwert sich dort über Fehler.
Es wäre wirklich cool, wenn ihr mir helfen könntet das er nur in den Files bleibt in denen ich es auch will.
Hier der betroffene Code:
[CODE lang="java" title="main Methode"]package uebung6;
public class RunTransportSimulator {
public static void main(String[] args) {
Elevator elev = new Elevator("Paternosta", 0 );
System.out.println(elev.getName());
}
}[/CODE]
[CODE lang="java" title="Elevator Klasse"]package uebung6;
class Elevator implements CanMoveVertically {
private double z;
private String name;
private double speed;
Elevator(String name, double z) {
this.name = name ;
this.z = z ;
this.speed = 0 ;
}
@Override
String getName(){
return this.name;
}
@Override
void changeVerticalSpeed(double deltaSpeed){
this.speed += deltaSpeed;
}
@Override
void move() {
this.z += this.speed ;
}
@Override
String toString(){
return this.name + " (elevator) is height " + this.z;
}
}[/CODE]
[CODE lang="java" title="CanMoveVertically"]package uebung6;
public interface CanMoveVertically extends Movable{
void changeVerticalSpeed(double deltaSpeed);
}[/CODE]
[CODE lang="java" title="Movable Interface"]package uebung6;
public interface Movable {
void move();
String getName();
}[/CODE]
Nun springt er in folgendes File in einem anderem Package und gibt folgende Fehlermeldung aus:
[CODE lang="java" title="Babybug"]package gridworld.framework.actor;
public class BabyBug extends DisposableBug {
private int flowersEaten = 0;
public BabyBug() {
this.setColor(Color.YELLOW);
}
@Override
public void act() {
super.act();
eatFlowerAhead();
if (flowersEaten >= 3) {
Location loc = this.getLocation();
Grid gr = this.getGrid();
this.removeSelfFromGrid();
if (Math.random() <= 0.5) {
DisposableBug bug = new DisposableBug();
bug.putSelfInGrid(gr, loc);
} else {
Breeder breeder = new Breeder();
breeder.putSelfInGrid(gr, loc);
}
}
}
@Override
public void move() {
Grid<Actor> gr = getGrid();
if (gr == null)
return;
Location loc = getLocation();
Location next =
loc.getAdjacentLocation(getDirection());
if (gr.isValid(next))
moveTo(next);
else
removeSelfFromGrid();
}
private void eatFlowerAhead() {
Grid<Actor> gr = getGrid();
if (gr == null)
return;
Location loc = getLocation();
Location next =
loc.getAdjacentLocation(getDirection());
if (!gr.isValid(next))
return;
Actor neighbor = gr.get(next);
if (neighbor instanceof Flower) {
neighbor.removeSelfFromGrid();
flowersEaten++;
}
}
}[/CODE]
Fehlermeldung
C:\Users\Malte\IdeaProjects\Uebung\src\main\java\gridworld\framework\actor\BabyBug.java:6:23
java: cannot find symbol
symbol: variable Color
location: class gridworld.framework.actor.BabyBug
Ich freue mich sehr über eure Hilfe!
VG Malte
Ich nehme gerade an einem Modul in der uni teil, in dem wir an einem Github dokument arbeiten.
Mit der Push und Pull Sache komme ich ganz gut zu rande, jedoch habe ich mit den Packages probleme.
Und zwar bleibt mir der Kompilierer einfach nicht in dem Programm wo ich ihn haben will, sondern geht in andere Files (anderer Packages) und beschwert sich dort über Fehler.
Es wäre wirklich cool, wenn ihr mir helfen könntet das er nur in den Files bleibt in denen ich es auch will.
Hier der betroffene Code:
[CODE lang="java" title="main Methode"]package uebung6;
public class RunTransportSimulator {
public static void main(String[] args) {
Elevator elev = new Elevator("Paternosta", 0 );
System.out.println(elev.getName());
}
}[/CODE]
[CODE lang="java" title="Elevator Klasse"]package uebung6;
class Elevator implements CanMoveVertically {
private double z;
private String name;
private double speed;
Elevator(String name, double z) {
this.name = name ;
this.z = z ;
this.speed = 0 ;
}
@Override
String getName(){
return this.name;
}
@Override
void changeVerticalSpeed(double deltaSpeed){
this.speed += deltaSpeed;
}
@Override
void move() {
this.z += this.speed ;
}
@Override
String toString(){
return this.name + " (elevator) is height " + this.z;
}
}[/CODE]
[CODE lang="java" title="CanMoveVertically"]package uebung6;
public interface CanMoveVertically extends Movable{
void changeVerticalSpeed(double deltaSpeed);
}[/CODE]
[CODE lang="java" title="Movable Interface"]package uebung6;
public interface Movable {
void move();
String getName();
}[/CODE]
Nun springt er in folgendes File in einem anderem Package und gibt folgende Fehlermeldung aus:
[CODE lang="java" title="Babybug"]package gridworld.framework.actor;
public class BabyBug extends DisposableBug {
private int flowersEaten = 0;
public BabyBug() {
this.setColor(Color.YELLOW);
}
@Override
public void act() {
super.act();
eatFlowerAhead();
if (flowersEaten >= 3) {
Location loc = this.getLocation();
Grid gr = this.getGrid();
this.removeSelfFromGrid();
if (Math.random() <= 0.5) {
DisposableBug bug = new DisposableBug();
bug.putSelfInGrid(gr, loc);
} else {
Breeder breeder = new Breeder();
breeder.putSelfInGrid(gr, loc);
}
}
}
@Override
public void move() {
Grid<Actor> gr = getGrid();
if (gr == null)
return;
Location loc = getLocation();
Location next =
loc.getAdjacentLocation(getDirection());
if (gr.isValid(next))
moveTo(next);
else
removeSelfFromGrid();
}
private void eatFlowerAhead() {
Grid<Actor> gr = getGrid();
if (gr == null)
return;
Location loc = getLocation();
Location next =
loc.getAdjacentLocation(getDirection());
if (!gr.isValid(next))
return;
Actor neighbor = gr.get(next);
if (neighbor instanceof Flower) {
neighbor.removeSelfFromGrid();
flowersEaten++;
}
}
}[/CODE]
Fehlermeldung
C:\Users\Malte\IdeaProjects\Uebung\src\main\java\gridworld\framework\actor\BabyBug.java:6:23
java: cannot find symbol
symbol: variable Color
location: class gridworld.framework.actor.BabyBug
Ich freue mich sehr über eure Hilfe!
VG Malte