# Frage zu Klasse mit Datenfeldern



## Dasmic (16. Jun 2004)

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 (16. Jun 2004)

???


```
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 (16. Jun 2004)

```
$ 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 ;-)


----------



## bygones (16. Jun 2004)

wahrscheinlich...
aber bitte Variablen *immer* klein schreiben !!


----------



## meez (16. Jun 2004)

deathbyaclown hat gesagt.:
			
		

> wahrscheinlich...
> aber bitte Variablen *immer* klein schreiben !!


Vars schon...Aber Objekte nicht...Und String ist soweit ich weiss ein Objekt..


----------



## bygones (16. Jun 2004)

meez hat gesagt.:
			
		

> Vars schon...Aber Objekte nicht...Und String ist soweit ich weiss ein Objekt..




```
String Titel, boolean kostenlos, String[] Teilnehmer
```
 macht man net !

```
String titel, boolean kostenlos, String[] teilnehmer
```
also die Klassen natürlich net - aber die namen der Variabeln !!


----------



## KSG9|sebastian (16. Jun 2004)

```
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 (16. Jun 2004)

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


----------



## meez (16. Jun 2004)

KSG9|plak hat gesagt.:
			
		

> ```
> public class Kurs {
> public Kurs(){
> 
> ...



warum ein leerer Konstruktor...??


----------



## Dasmic (16. Jun 2004)

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 (16. Jun 2004)

```
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 (16. Jun 2004)

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?`


----------



## Isaac (16. Jun 2004)

Pulvertoastman hat gesagt.:
			
		

> ```
> $ javac solveHomework
> javac: invalid flag: solveHomework
> ```




Hehe  :bae:


----------



## meez (16. Jun 2004)

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

Das hier läuft:


```
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 (16. Jun 2004)

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?


----------



## bygones (16. Jun 2004)

http://www.java-forum.org/de/viewtopic.php?t=245


----------

