Uml Java

Neue Frage »

Auf diesen Beitrag antworten »
neuling96 Uml Java

hi,
da ich noch nicht ganz das konzept vom UML verstanden habe, hier ein eintwurf ohne testen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:

public interface Comparable {

int compareTo(D other);
}

public class Druckauftrag implementes Comparable{    

private int prioritaet;
private String text;

public Druckauftrag(Sting text, int prioritaet){
this. text= text;
this. prioritaet= prioritaet;
}

public  void setPrioritaet(int prioritaet){
this. prioritaet= prioritaet;
}

public int getPrioritaet(){
return this.prioritaet;
}

public  void settext(String text ){
this. text= text;
}

public String getPrioritaet(){
return this.text;
}

public int compareTo(D other){ 

if ( other.getPrioritaet<this.Prioritaet){
return -1;
}else {
if (other.getPrioritaet==this.Prioritaet){
return0;
}else {
return 1;
   }
  }
}


k.a wie den class drucker noch einbauen soll
 
Auf diesen Beitrag antworten »
eulerscheZahl

Nutze den Compiler (ich sollte mir dafür ein Makro schreiben), der verrät auch, wenn du dich vertippt hast.

implementes -> implements
Sting -> String
return0 -> return 0

überdenke den Methodennamen bei:
code:
1:
2:
3:
public String getPrioritaet(){
return this.text;
}


Fehlt nur noch der Drucker, der die Aufträge erhält.

edit: das D bei Comparable erschließt sich mir nicht. Soll das ein Template sein?
Auf diesen Beitrag antworten »
neuling96

Zitat:
Original von eulerscheZahl


edit: das D bei Comparable erschließt sich mir nicht. Soll das ein Template sein?


sry ich weiß nicht was ein Template ist

code:
1:
2:
3:
public String gettext(){
return this.text;
}


für drucker weiß ich nicht wie ich weiter machen soll

public class Drucker extends Druckerauftrag{

private Druckerauftrag auftrag;


public void drucke(Druckauftrag auftrag){
Auf diesen Beitrag antworten »
eulerscheZahl

Dann ohne Template.
Das Problem ist: du musst das D irgendwie in einen Druckauftrag umwandeln können, wenn du die beiden vergleichen willst.
Also entweder: int compareTo(Druckauftrag other); oder int compareTo(Object other);

Zitat:
Drucker extends Druckerauftrag

nein. Der Drucker erbt doch nicht von Auftrag, er hat Aufträge.

code:
1:
2:
3:
4:
5:
6:
public class Drucker {
private ArrayList<Druckerauftrag> auftraege;

public void drucke(Druckauftrag auftrag){ 
    auftraege.add(auftrag);
}
 
Auf diesen Beitrag antworten »
neuling96

ich dachte immer, wenn das raute symbol am kasten liegt
also zum beispiel
hier liegt raute am drucker kasten

heißt das das drucker erbt verwirrt
Auf diesen Beitrag antworten »
eulerscheZahl

Vererbung ist mit einer dreieckigen Spitze (so wie beim Interface, aber die Linie muss durchgezogen sein).
Beim Drucker hast du eine Aggregation.
Auf diesen Beitrag antworten »
neuling96

Die Situation, dass Objekte der Klasse A aus Objekten der Klasse B zusammengesetzt sind, die Zusammensetzung aber nicht essentiell für die Existenz eines Objekts der Klasse Aist

A ist Drucker
B ist Druckaufträge , richtig?


0..n bedeutet Druckauftrag verwendete objekte von Drucker und zwar 0..n ?

1 Drucker verwendet Objekte von Druckauftrag und zwar einen, richtig?
Auf diesen Beitrag antworten »
neuling96

private ArrayList<Druckerauftrag> auftraege;

wieso eine Arraylist Drucker verwendet von Druckauftrag genau ein objekt?
Auf diesen Beitrag antworten »
eulerscheZahl

Zitat:
A ist Drucker
B ist Druckaufträge , richtig?

ja

mit der Anzahl hast du Recht, da habe ich nicht richtig aufgepasst. Auch wenn ich so keinen Sinn erkenne, ich schicke doch eine Datei nicht an alle Drucker im Netzwerk, dann habe ich ja hinterher mehr als eine Seite.
Auf diesen Beitrag antworten »
Neuling96

Zitat:
Original von eulerscheZahl
Zitat:
A ist Drucker
B ist Druckaufträge , richtig?

ja

mit der Anzahl hast du Recht, da habe ich nicht richtig aufgepasst. Auch wenn ich so keinen Sinn erkenne, ich schicke doch eine Datei nicht an alle Drucker im Netzwerk, dann habe ich ja hinterher mehr als eine Seite.


Es müsste doch im UML Diagramm die Zahlen 1 und 0..n genau verdreht werden dann passt es oder
Auf diesen Beitrag antworten »
eulerscheZahl

Ja, so hatte ich es erst gelesen.
 
Neue Frage »
Antworten »


Verwandte Themen

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