У меня есть программа, в которой я изучал и опробовал шаблон наблюдения.Как мне организовать проекты во время работы без IDE?
Я написал это с нано на моем терминале, и я сохранил его как это:
kneipe
(location
(Show.java))
(leute
(Beobachter.java
Comedian.java))
Я скомпилировал правильно все из них, но он продолжает говорить, что в моей основной ссылки на классы не являются правильными поэтому он не может создавать новые Object
s из других классов.
Вот сделка:
Я попробовал его на затмении, и она отлично работает с import package2.*;
И все учебники, которые я нашел в Интернете или даже в книгах только с одним пакетом-папке.
Итак, как мне организовать проект и как правильно импортировать, потому что я почти все (и ничего не работал) (я даже пытался копировать второй пакет в первый, который тоже не работал).
ClassA:
package leute;
import java.util.*;
public class Comedian extends Observable {
String name = "";
int numGags = 0;
String joke = "abc";
boolean toldjoke = false;
public Comedian(String name, int numGags) {
this.name = name;
this.numGags = numGags;
}
public void telljoke() {
this.toldjoke = true;
System.out.println(joke);
setChanged();
notifyObservers();
}
private String getname() {
return this.name;
}
private int getnumgags() {
return this.numGags;
}
}
То ClassB:
package leute;
import java.util.*;
public class Besucher implements Observer {
String name = "";
int intus = 0;
boolean lacht = false;
public Besucher(String name, int intus) {
this.name = name;
this.intus = intus;
}
private String getname() {
return this.name;
}
public void enought(Besucher a) {
a.lacht = false;
}
public void update(Observable o, Object arg) {
lacht = true;
System.out.println("HAHAHAH!!!");
}
}
Thats Главное:
package location;
import leute.*;
import java.util.*;
public class Show {
public static void main(String args[]) {
Observer franz = new Besucher("Franz", 6);
Observer karl = new Besucher("Karl", 1);
Comedian mark = new Comedian("Mark", 5);
mark.addObserver(franz);
mark.telljoke();
mark.addObserver(karl);
mark.telljoke();
mark.deleteObserver(karl);
mark.deleteObserver(franz);
mark.telljoke();
}
}
Как уже упоминалось, что прекрасно работает на затмении, но терминал говорит мне это:
[email protected] ~/Schreibtisch/Alle Projekte $ javac
kneipe/location/Show.java
kneipe/location/Show.java:3: error: package leute does not exist
import leute.Besucher;
^
kneipe/location/Show.java:4: error: package leute does not exist
import leute.Comedian;
^
kneipe/location/Show.java:10: error: cannot find symbol
Observer franz = new Besucher("Franz", 6);
^
symbol: class Besucher
location: class Show
kneipe/location/Show.java:11: error: cannot find symbol
Observer karl = new Besucher("Karl", 1);
^
symbol: class Besucher
location: class Show
kneipe/location/Show.java:12: error: cannot find symbol
Comedian mark = new Comedian("Mark", 5);
^
symbol: class Comedian
location: class Show
kneipe/location/Show.java:12: error: cannot find symbol
Comedian mark = new Comedian("Mark", 5);
^
symbol: class Comedian
location: class Show
6 errors
Вы должны сообщить нам **, что ** говорит вам **, точное сообщение **. Не перефразируй это. Отправьте точное и полное сообщение и соответствующий код, на который он ссылается. –
Укажите код, особенно линию пакета и определение класса. Более того, точное сообщение об ошибке было бы полезно. – Matt