Zum Inhalt springen

Problem mit Methode, BlueJ


Empfohlene Beiträge

Geschrieben

Hallo

Ich habe folgende Klassen mithilfe einer n:m Beziehung verbunden:

Klasse ARTIKEL:


public class ARTIKEL

{

    private String thema;

    private String ueberschrift;

    private int laenge;



    public ARTIKEL(){        

       laenge= 2;

    }


    public void verfassen (String t,String u) {

        ueberschrift = u;

        thema= t;

    }


    public int gibLaenge(){

        return laenge;        

    }


    public void themaAendern( String th ){

        thema= th;   

    }



}

und Klasse ZEITUNG:



public class ZEITUNG

{

    private String name;

    private String typ;

    private String adresse;


    public ZEITUNG() {

        name = "Süddeutsche Heizung";

        typ = "Newspaper";

        adresse = "Straße";

    }


    public void artikelErstellen(ZEITUNG ar){ 



    }


    public void umsortieren(){


    }


}



Nun lautet die Fragestellung: Schreibe die Mehtode "Artikel erstellen()" der Klasse Zeitung, die folgendes bewirkt: der eingegebene Artikel wird benutzt und ein neues Artikel-Zeitungs-Paar eingetragen. Dann wird der Verlagsname abgefragt sowie die Länge des Artikels.

Ich weiß zwar, dass ich irgendwie die Punktnotation verwenden muss, habe aber keine Ahnung wie das funktionieren soll.

Kann mir jemand helfen?

Geschrieben
Ich habe folgende Klassen mithilfe einer n:m Beziehung verbunden

Nein, das hast Du nicht...

Außerdem entspricht dies nicht der Aufgabenstellung, die Aufgabenstellung lässt keine n:m Beziehung vermuten.

Nun lautet die Fragestellung: Schreibe die Mehtode "Artikel erstellen()" der Klasse Zeitung, die folgendes bewirkt: der eingegebene Artikel wird benutzt und ein neues Artikel-Zeitungs-Paar eingetragen.

Du hast die Methode hier falsch angegeben, denn sie entspricht nicht der Aufgabenstellung.

Ich weiß zwar, dass ich irgendwie die Punktnotation verwenden muss, habe aber keine Ahnung wie das funktionieren soll.

Nein, diese brauchst Du hier nicht.

Geschrieben
Nein, das hast Du nicht...

Außerdem entspricht dies nicht der Aufgabenstellung, die Aufgabenstellung lässt keine n:m Beziehung vermuten.

Doch habe ich. Natürlich habe hier nicht das ganze Projekt gepostet, da sie für diese Aufgabe nicht erforderlich sind

Du hast die Methode hier falsch angegeben, denn sie entspricht nicht der Aufgabenstellung.

Tut mir leid. es sollte die Methode artikelErstellen() sein. Der Parameter im Quellcode soll bitte ignoriert werden!

Nein, diese brauchst Du hier nicht.

Sondern?

Geschrieben
Doch habe ich. Natürlich habe hier nicht das ganze Projekt gepostet, da sie für diese Aufgabe nicht erforderlich sind

Die Beziehung ist erforderlich, denn Du sollst "ein neues Artikel-Zeitungs-Paar eingetragen".

Es wäre also besser, Du gibst dafür auch den Code an.

Noch schöner wärs, sich an die Java Code Conventions zu halten. Aber ich weiß nicht, ob das an Dir oder an Deinem Lehrer liegt.

Geschrieben

Ok

Hier ist die Hilfsklasse für die m:n Klasse:



public class ARTIKELZEITUNG

{


    private ARTIKEL artikel;

    private ZEITUNG zeitung;


    public ARTIKELZEITUNG(ARTIKEL art, ZEITUNG zeit)

    {

        artikel = art;

        zeitung = zeit;

    }



}

und hier die Assoziationsklasse:

public class ABGEDRUCKT

{

    private ARTIKELZEITUNG[] artzei;

    public ABGEDRUCKT()

    {

        artzei= new ARTIKELZEITUNG [1000];


    }



}



In welcher Klasse muss ich die Methode programmieren?

Geschrieben (bearbeitet)

War das so vorgegeben oder hast Du Dir das ausgedacht? So wie es jetzt ist, finde ich es äußerst ungünstig, die artikelErstellen()-Methode in der Zeitungsklasse zu haben.

Bzw eine externe Klasse, die die Beziehung zwar herstellen soll, aber nicht verwaltet.

Eher würde ich so etwas machen, um die Beziehung darzustellen, auch wenn ich den Aufbau insgesamt nicht für ideal halte (anstelle von List gehen auch Arrays, wenn Dir das lieber ist, aber die sind schlechter zu handhaben):

public class ZEITUNG {

    private String name;

    private String typ;

    private String adresse;

    private List<ARTIKEL> artikelliste;

    //...

}


public class ARTIKEL

{

    private String thema;

    private String ueberschrift;

    private int laenge;

    private List<ZEITUNG> zeitungsliste;

    //...

}

Dann lässt sich auch die artikelErstellen()-Methode in der Zeitungsklasse besser handhaben.

In welcher Klasse muss ich die Methode programmieren?

Das sagt doch die Aufgabenstellung schon.

Bearbeitet von Ezra
  • 2 Wochen später...
Geschrieben
public class ARTIKEL

{

private String thema;

private String ueberschrift;

private int laenge;

private List<ZEITUNG> zeitungsliste;

//...

}

Eine Frage die sich mir auf anhieb stellt ist folgende : Kennt der Artikel die Zeitung ? Ich glaube nicht :)

Lg

Nicer

Geschrieben (bearbeitet)

Es soll eine n:m-Beziehung sein, d.h. irgendwo muss abgebildet werden, wenn ein Artikel in mehreren Zeitungen vorkommt. Ich würd das Ganze in ABGEDRUCKT verwalten, passt aber nicht zur Aufgabenstellung. Darum mein Nebensatz

auch wenn ich den Aufbau insgesamt nicht für ideal halte

Mir ist immer noch nicht klar, was hier tatsächlich vorgegeben und was vom TO dazugekommen ist. Leider will er/sie mir das nicht beantworten.

Bearbeitet von Ezra

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...