Frage zu Klasse mit Datenfeldern

Status
Nicht offen für weitere Antworten.

Dasmic

Mitglied
Hallo,

ich habe Probleme mit einer Übungsaufgabe die ich lösen muß und es wäre nett wenn mir jemand helfen könnte, da ich noch ziemlich am Anfang mit Java Programmierung bin und bei dieser Aufgabe nicht weiter komme!

Die Aufgabe:

Schreiben Sie eine Klasse "Kurs" mit den Datenfeldern:
Titel (String), kostenlos (boolean), Name der Teilnehmer (String-Array).
Sehen Sie Methoden zum Anlegen von Kursen mit Teilnehmern.


Es wäre nett wenn mir jemand helfen könnte bei der Programmierung dieser Aufgabe, es ist sehr wichtig!
 

meez

Top Contributor
???

Code:
public class kurs {

private String Titel;
private boolean kostenlos;
private String[] Teilnehmer;

public void addKurs(String Titel, boolean kostenlos, String[] Teilnehmer) {
this.Titel=Titel;
this.kostenloas=kostenlos;
this.Teilnehmer=Teilnehmer;
}
}
 

Pulvertoastman

Bekanntes Mitglied
Code:
$ javac solveHomework
javac: invalid flag: solveHomework
Usage: javac <options> <source files>
where possible options include:
  -g                        Generate all debugging info
  -g:none                   Generate no debugging info
  -g:{lines,vars,source}    Generate only some debugging info
  -nowarn                   Generate no warnings
  -verbose                  Output messages about what the compiler is doing
  -deprecation              Output source locations where deprecated APIs are us
ed
  -classpath <path>         Specify where to find user class files
  -sourcepath <path>        Specify where to find input source files
  -bootclasspath <path>     Override location of bootstrap class files
  -extdirs <dirs>           Override location of installed extensions
  -d <directory>            Specify where to place generated class files
  -encoding <encoding>      Specify character encoding used by source files
  -source <release>         Provide source compatibility with specified release
  -target <release>         Generate class files for specific VM version
  -help                     Print a synopsis of standard options

schade, geht nicht ;-)
 
B

bygones

Gast
wahrscheinlich...
aber bitte Variablen immer klein schreiben !!
 
B

bygones

Gast
meez hat gesagt.:
Vars schon...Aber Objekte nicht...Und String ist soweit ich weiss ein Objekt..;)
Code:
String Titel, boolean kostenlos, String[] Teilnehmer
macht man net !
Code:
String titel, boolean kostenlos, String[] teilnehmer
also die Klassen natürlich net - aber die namen der Variabeln !!
 

KSG9|sebastian

Top Contributor
Code:
public class Kurs { 

private String titel;
private boolean kostenlos; 
private String[] teilnehmer; 

    public Kurs(){

    } 
    public void addKurs(String title, boolean kostenlos; String[] teilnehmer){
        this.title = title;
        this.kostenlos = kostenlos;
        this.teilnehmer = teilnehmer;
    } 
}
 

meez

Top Contributor
So hat er in seiner Aufgabe die Vars aber benannt.
Das ist wohl Geschmacks- und Stilsache...;)

Aber ich machs ja ähnlich...
Referenz-Vars: kleiner anfangsbuchstabe, danach nach belieben
Primitiv-Vars: immer klein
 

Dasmic

Mitglied
Danke!

aber könnte mir jemand vielleicht noch erklären was die jewiligen Codes bedeuten nur Stichworte!
Wenn´s geht wäre echt dankbar!
 

meez

Top Contributor
Code:
public class Kurs {  // Klasse definieren

private String titel; // Eine Klassenvariable (Global für das erstellte Object) vom Typ String (Text)
private boolean kostenlos; // Eine Klassenvariable (Global für das erstellte Object) vom Typ boolean (true/false)
private String[] teilnehmer; // Eine Klassenvariable (Global für das erstellte Object) vom Typ String Array (Viele Strings in einer Variable...;-))


    public void addKurs(String title, boolean kostenlos; String[] teilnehmer){ //Definition der Method mit übergabewerten
        
        //Die übergebenen Werte von der Methode an die Klassenvariablen übergeben, da die übergebenen Vars nur in dieser Methode sichtbar sind...Weitere Methoden benutzten dann die glecihnamigen Klassenvars.
        this.title = title; 
        this.kostenlos = kostenlos;
        this.teilnehmer = teilnehmer;
    }
}
 

Dasmic

Mitglied
Danke!!!!

Aber wenn ich das Programm ausführe dann gibt er ja nichts aus oder? Das Programm läuft halt im Hintergrund fehlerlos durch oder?`
 

meez

Top Contributor
Das ist nur eine Klasse...die läuft eh nicht von selber....

Das hier läuft:

Code:
public class Kurs {
private String titel;
private boolean kostenlos;
private String[] teilnehmer;
   
    public void addKurs(String title, boolean kostenlos; String[] teilnehmer){
        this.title = title;
        this.kostenlos = kostenlos;
        this.teilnehmer = teilnehmer;
    }
    
    public void getKurs(){
       System.out.println("Titel: " +  this.title);
        System.out.println("Kostenlos: " + this.kostenlos);
        for (int n=0;n<this.teilnehmer.length;n++)
              System.out.println("Teilnehmer: " + teilnehmer[n]);
    }

    public static void main(String[] xxx) {
       Kurs k = new Kurs();
       String[] teilnehmer = {"Name1", "Name2", "Name3"};
       String title = "Kurs 1";
       boolean kostenlos = true;
       //Kurs anlegen
       k.addKurs(title , kostenlos ,teilnehmer );

       //Kurs ausgeben
       k.getKurs();
    }
}

edit von deathbyaclown: code tags
 

Dasmic

Mitglied
Danke das hat mir sehr weitergeholfen!!!

Kannst du mir irgend ein Buch oder sonst was empfehlen? Speziell für Anfänger und leicht verständlich?
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben