Counter erstellen - Was mache ich falsch?

Status
Nicht offen für weitere Antworten.
Hallo liebe User,
vorab möchte ich mich schonmal entschuldigen, fals meine Frage hier falsch platziert ist.
Ich habe echt wenige Kenntnisse ( Bin seit einer Woche in meinem Studium mit dem "Programmieren" angefangen)
In unserem Lehrbuch "Programming and Object orientated Design using Java (3rd Edition)" wird in Kapitel 2 gezeigt, wie man einen simplen Counter als Klasse erstellt.
Er braucht nur 1 query: current count
2 commands: rest, incrementCount

Wenn ich nun die im Buch beschrieben Schritte verfolge bekomme ich in Dr.Java immer nen Error, das sieht dann alles wie folgt aus:

> package counters;
> public class Counter {
}
> public int currentCount () {
public void incrementCount () {
Syntax Error: "public int currentCount ( ) { public"
> public int currentCount () {


Was mache ich falsch? Danke im vorraus! :###
 

Landei

Top Contributor
Was ist Dr. Java?

Abgesehen davon, es sieht so aus, als machst du deine Klasse gleich wieder "zu". Die Methoden gehören *in* die Klasse, nicht dahinter. Mit anderen Worten: Du "klammerst" falsch.

Das Grundgerüst deiner Klasse sollte so aussehen:
Code:
public class Counter {

  public int currentCount() {
    ...
  }

  public void reset() {
     ...
  } 

  public void incrementCount() {
     ...
  }

}
 
Danke für die schnellen Antworten.
Jo, der Fehler war, dass ich falsch geklammert hab, nun funktionierts, d.h. viel mehr ich bekomme keinen Error mehr, was genau ich nun damit machen kann, weiss ich immer noch nicht ; )
 
Danke für die schnellen Antworten.
Jo, der Fehler war, dass ich falsch geklammert hab, nun funktionierts, d.h. viel mehr ich bekomme keinen Error mehr, was genau ich nun damit machen kann, weiss ich immer noch nicht ; )

sry für Doppelpost, kanns leider net löschen
 
MiDniGG hat gesagt.:
Nuja. Eben irgendetwas hochzählen und dann wieder auf 0 setzen :-D

Aber dafür braucht man doch noch Methoden oder nicht? Bin jetzt soweit, dass ich das als code hab:
Code:
package counters;
public class Counter {
  /** 
   * Create a new Counter, with the count initialized to 0.
   */
  public Counter () {
  return 0;
  }
  // Queries:
  /**
   * The number of items counted.
   */
  public integer currentCount () {
  }
  //Commands:
  /**
   * Increment the count by 1.
   */
  public void incrementCount () {
  }
  
  /**
   * Reset the count to 0.
   */
  public void reset () {
  }
}
Jetzt wollen die von mir, dass ich nen neues Object erstelle:
Code:
> import counters.*;
> Counter c = new Counter ();
Aber das bekomm ich irgendwie nicht hin. Da kommt dann immer son Auto-Import Class Pop-Up, womit ich nichts anfangen kann.
 

Der Müde Joe

Top Contributor
Ein Konstruktor hat keinen Rückgabetypen.

also

Code:
public Counter () { }

reicht aus

du möchtest den Counter mit 0 initialisieren. dafür brauchst du eine Variable, welche dieses auch hält
für jedes Counter-Objekt

Code:
private int count;

public Counter() {
this.count = 0;
}

Der Konstruktor erstellt ein neues Counter-Objekt und initialisiert den count mit 0.
du hast nun Methoden, welche mit dem Objekt arbeiten.
zB. reset..

Code:
public void reset() {
this.count = 0;
}

die Methode stellt die Variable count wieder auf 0. Jedes Count-Objekt hat ein eigenes count.

>public integer currentCount () {

Der Type integer gibt es nicht: Es gibt den primitiven Typ "int" und das Klasse "Integer" (Wrapper-Klasse für int)

> Da kommt dann immer son Auto-Import Class Pop-Up, womit ich nichts anfangen kann.

Hä. Schaff dir eine anständige IDE (Eclipse, Netbeans oder für den Anfang JCreator evtl.) an
oder machs via einen einfachen Editor (Nein, nicht Notepad, WordPad oder so was von MS).
zB Scite oder so was und benutz die Shell, Kommandozeile fürs Kompilieren
 

Der Müde Joe

Top Contributor
Hmm... naja zum mal schauen:

Code:
public class Counter {
	
	//jedes Objekt hat ein eigenes count Feld
	private int count;
	
	//Create a new Counter, with the count initialized to 0. 
	public Counter () {
		this.count = 0;
		//this(0); eigentlich besser, aber egal
	}
	
	// Erstelle Counter mit einem anderen start wert als 0
	public Counter (int count) {
		// das count Feld von diesem Objekt (this) ist gleich dem übergebenen count
		this.count = count;
	}
		
	public void reset() {
		// setzt das count wieder auf 0
		this.count = 0;
	}
	
	//gibt den Wert von count zurück
	public int getCounter() {
		return this.count;
	}
	
	public static void main(String[]  args) {
		//erstelle ein Counter Objekt
		Counter c0 = new Counter();
		//erstelle Counter mit anfagswert 7
		Counter c7 = new Counter(7);
		
		System.out.println(c0.getCounter()); //prints 0
		System.out.println(c7.getCounter()); //prints 7
		//reseted c7
		c7.reset();
		System.out.println(c7.getCounter()); //prints 0
	}
}
 

Landei

Top Contributor
Jetzt fehlt dir nur noch die increaseCounter() Methode, aber das solltest du wirklich selber machen. Abschreiben bringt nix :-D
 

Schandro

Top Contributor
machst du wiklich schon nach 1 Woche Java OOP?? Falls du wirklich ansonsten keine Programmier Ehrfahrung hast würd ich dir raten, am anfang zu beginnen ;)
Ich z.b. hab erst nach 2 Monaten mit OOP angefangen
 

andre111

Bekanntes Mitglied
OOP ist ja nicht mal java spezifisch, und wenn man das prinzip von klassen und objekten verstanden hat, dann sollte das umsetzen in source-code kein allzu großes problem mehr sein ( bei einfachen anfängeraufgaben )
 

Landei

Top Contributor
ARadauer hat gesagt.:
das halte ich für eine schlechte idee, warum alte funktional orientierte paradigmen eintrichtern wenn man java programmieren will?

Ich weiß, was du meinst und stimme voll zu.

Leider hat der Begriff "funktionale" Programmierung zwei völlig unterschiedliche Bedeutungen:
- Einmal in Sprachen wie in C, Pascal, Fortran, Basic & Co (auch "strukturierte" oder "prozedurale" Programmierung genannt), und das ist, wie schon angemerkt, Alteisen.
- Und dann Sprachen, in denen Funktionen Variablen zugewiesen und als Funktionsargumente verwendet werden können, wie in Lisp, Erlang, Haskell, OCaml und F# - und diese Sprachen sind alles andere als uninteressant (insbesondere für parallele Verarbeitung)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Counter durch gepresste Taste nur auf 1 erhöhen und nicht durchzählen lassen Java Basics - Anfänger-Themen 7
Ostkreuz Counter für Booleanwerte Java Basics - Anfänger-Themen 8
B Threads Counter mit ungeraden Zahlen Java Basics - Anfänger-Themen 32
P Iterieren mit einer Foreach in Lambdaschreibweise und Counter. Java Basics - Anfänger-Themen 1
S Counter Label Button Java Basics - Anfänger-Themen 4
P Counter im Konstruktor Java Basics - Anfänger-Themen 11
S Java Counter: nur 1 mal hochzählen auch wenn Abfrage mehrmals zutrifft. Java Basics - Anfänger-Themen 1
I counter der ausgegebenen zahlen Java Basics - Anfänger-Themen 2
Todesbote Treeset - Wenn bestimmtes Objekt vorkommt Counter erhöhen Java Basics - Anfänger-Themen 6
CR7 String schneiden und Counter hochzählen Java Basics - Anfänger-Themen 9
A Counter für die anzahl von regulären ausdrücken Java Basics - Anfänger-Themen 4
H Java - Counter Java Basics - Anfänger-Themen 2
O Counter im JWindow mit Thread und dispose Java Basics - Anfänger-Themen 3
A exe Datei erstellen Java Basics - Anfänger-Themen 8
J Packages erstellen Java Basics - Anfänger-Themen 7
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
D MacOS: PDF erstellen geht nicht Java Basics - Anfänger-Themen 1
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
P Welches SDK für das erstellen einer ausführbaren Datei? Java Basics - Anfänger-Themen 4
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
C Gewinnspiel erstellen mit Algorithmus Java Basics - Anfänger-Themen 3
Ostkreuz Spielfeld Schatz erstellen Java Basics - Anfänger-Themen 5
I Erste Schritte Einfache Datenbank-Webseite erstellen als Nicht-IT-lerin Java Basics - Anfänger-Themen 24
T Objekte mit arrays erstellen Java Basics - Anfänger-Themen 6
B Klasse statisch erstellen da n-mal geladen Java Basics - Anfänger-Themen 3
laxla123 Dreieck erstellen Java Basics - Anfänger-Themen 1
XWing Random Punkte erstellen mit der Random klasse Java Basics - Anfänger-Themen 15
A Passwort erstellen Java Basics - Anfänger-Themen 3
S CVS erstellen Java Basics - Anfänger-Themen 1
RashAGhul Java Verwaltungstool Erstellen mit kaum Wissen Java Basics - Anfänger-Themen 9
K warum kann ich das Objekt nicht erstellen ? Java Basics - Anfänger-Themen 2
paulen1 Best Practice "Unchecked Assignment" Warnung beim erstellen eines 2D Arrays of Arraylists Java Basics - Anfänger-Themen 2
dennis_lnz Klassen Wie kann ich mein Java Textadventure verbessern, um ein Klassendiagramm zu erstellen? Java Basics - Anfänger-Themen 9
dcHost Java Kara Sensor erstellen Java Basics - Anfänger-Themen 1
JustAProgrammer Ein Dreieck mit Arrays erstellen Java Basics - Anfänger-Themen 2
C GLOOP Problem beim Erstellen der Kamera Java Basics - Anfänger-Themen 9
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
F abbruch Exception lässt sich nicht erstellen Java Basics - Anfänger-Themen 2
U JList erstellen Java Basics - Anfänger-Themen 2
X Wie kann man ein Regex erstellen, die 8-Bit-Binär-Zahlen darstellen. Java Basics - Anfänger-Themen 1
httprt Probleme bei dem erstellen von leveln in meinem Spiel Java Basics - Anfänger-Themen 2
frager2345 Programm erstellen ohne Autoboxing und Unboxing Java Basics - Anfänger-Themen 13
berserkerdq2 IO Streams logfile erstellen und Sachen schreiben wie? Java Basics - Anfänger-Themen 2
B Teilprofil erstellen Java Basics - Anfänger-Themen 1
B Teilprofil erstellen Java Basics - Anfänger-Themen 1
I String Kombination erstellen anhand fortlaufender Zahl (Vertragsnummer) Java Basics - Anfänger-Themen 13
N 2D Array Summe erstellen Java Basics - Anfänger-Themen 6
T Log Funktion erstellen Java Basics - Anfänger-Themen 1
Dorfschmied Kartesisches Produkt von zwei Liste mit Hashmaps<String,String> erstellen Java Basics - Anfänger-Themen 4
S Programm erstellen Java Basics - Anfänger-Themen 3
S MinMax Programm erstellen Java Basics - Anfänger-Themen 4
S Mit for-Schleife ein 2D JLabel-Array mit veränderbaren Icons erstellen Java Basics - Anfänger-Themen 3
T Countdown erstellen Java Basics - Anfänger-Themen 7
I ZIP File erstellen Java Basics - Anfänger-Themen 10
L Ordner in neuen erstellten Ordner erstellen Java Basics - Anfänger-Themen 12
C Fehler beim erstellen eines Objektes Java Basics - Anfänger-Themen 3
B Zurück Button erstellen Java Basics - Anfänger-Themen 1
melaniemueller Lagerverwaltung erstellen - mehrdimensionale Arrays Java Basics - Anfänger-Themen 62
B JaxB - Referenzen erstellen? Java Basics - Anfänger-Themen 2
K Rekursion: Rechenmauer mit Array erstellen Java Basics - Anfänger-Themen 17
alice98 Erste Schritte Liste erstellen ohne vorgefertigte Klassen Java Basics - Anfänger-Themen 1
Aqtox Hallo ich muss für die Schule ein Wuerfell Duell erstellen jedoch habe ich ein fehler Java Basics - Anfänger-Themen 4
E Classpath Datai erstellen Java Basics - Anfänger-Themen 3
B eine methode erstellen Java Basics - Anfänger-Themen 7
I Entity erstellen, die für API gedacht ist Java Basics - Anfänger-Themen 33
M Packages erstellen mit Java-Editor Java Basics - Anfänger-Themen 6
L FinanzApp erstellen Java Basics - Anfänger-Themen 1
J Junit4 Klasse erstellen Java Basics - Anfänger-Themen 5
B Warteschlange erstellen mit LinkedList ? Java Basics - Anfänger-Themen 6
Animal-Mother BMI Rechner erstellen für W/M Java Basics - Anfänger-Themen 7
F GSON file mit einer List erstellen Java Basics - Anfänger-Themen 2
Ray19941 Über BlueJ Textdatei selbstständig erstellen lassen Java Basics - Anfänger-Themen 2
J Java Queue mit default Werten erstellen Java Basics - Anfänger-Themen 4
JaVaN0oB Bruchklasse erstellen Java Basics - Anfänger-Themen 9
N Kreismuster auf Bestehendem Kreis erstellen Java Basics - Anfänger-Themen 10
K Rahmen erstellen mit mehrdimensionalem Array Java Basics - Anfänger-Themen 1
B Hilfe bei Map Liste erstellen Java Basics - Anfänger-Themen 10
F Adjunkte Matrix erstellen Java Basics - Anfänger-Themen 3
J Objekt-Array dynamischer Länge aus Benutzereingaben erstellen Java Basics - Anfänger-Themen 6
T Startbildschirm für ein Spiel erstellen Java Basics - Anfänger-Themen 0
C Probleme mit dem Erstellen und Importieren von Packages Java Basics - Anfänger-Themen 6
GermanPie Discord Text Channel erstellen? Java Basics - Anfänger-Themen 1
K Objektdiagramm erstellen Java Basics - Anfänger-Themen 3
C Wie kann ich Versionen eines Projektes in Eclipse erstellen? Java Basics - Anfänger-Themen 3
D Klassen Klassendiagramm richtig erstellen Java Basics - Anfänger-Themen 20
S Objekte indiziert erstellen Java Basics - Anfänger-Themen 27
C eigene Methoden erstellen (Instanzmethoden) Java Basics - Anfänger-Themen 7
B Methode für jede beliebe Entity erstellen Java Basics - Anfänger-Themen 7
E Filmsammlung erstellen Java Basics - Anfänger-Themen 6
B Eine Methode erstellen Java Basics - Anfänger-Themen 3
M Erstellen eines insets Objekts, GridBagLayout Java Basics - Anfänger-Themen 13
I ArrayList erstellen innerhalb einer Zeile? Java Basics - Anfänger-Themen 3
N String N-Gramme mit Stream erstellen Java Basics - Anfänger-Themen 7
K Quersumme erstellen Java Basics - Anfänger-Themen 7
M Wie kann ich ein Objekt erstellen, wenn sich der Klassenname in einer Variablen befindet? Java Basics - Anfänger-Themen 10
D Input/Output Mehrzeiligen String aus Textdatei erstellen Java Basics - Anfänger-Themen 5
C Erstellen eines Widerstandsnetzwerks Java Basics - Anfänger-Themen 10
B Neue Liste erstellen, wenn Objekte bestimmte Referenz hat / Gruppierung von Einträgen Java Basics - Anfänger-Themen 12

Ähnliche Java Themen

Neue Themen


Oben